Heim  >  Artikel  >  Java  >  Fragen zum neuen Java-Interview 2020 – Multi-Threading (3)

Fragen zum neuen Java-Interview 2020 – Multi-Threading (3)

王林
王林nach vorne
2020-05-14 17:56:302119Durchsuche

Fragen zum neuen Java-Interview 2020 – Multi-Threading (3)

1. Welche Status hat der Thread-Pool?

Der Thread-Pool hat 5 Zustände: Läuft, Herunterfahren, Stopp, Aufräumen, Beendet.

Thread-Pool-Statuswechselrahmendiagramm:

Fragen zum neuen Java-Interview 2020 – Multi-Threading (3)

(Video-Tutorial-Empfehlung: Java-Video)

2. Was ist der Unterschied zwischen den Methoden „submit()“ und „execute()“ im Thread-Pool?

Die empfangenen Parameter sind unterschiedlich

Submit hat einen Rückgabewert, aber Execute nicht

Submit erleichtert die Ausnahmebehandlung

3 . Wie kann die Sicherheit von Multithread-Operationen in Java-Programmen gewährleistet werden?

Thread-Sicherheit spiegelt sich in drei Aspekten wider:

Atomizität: Bereitstellung eines sich gegenseitig ausschließenden Zugriffs, nur ein Thread kann gleichzeitig Daten bearbeiten (atomar, synchronisiert);

Sichtbarkeit: Änderungen am Hauptspeicher durch einen Thread können von anderen Threads rechtzeitig gesehen werden (synchronisiert, flüchtig);

Reihenfolge: Ein Thread beobachtet die Reihenfolge der Befehlsausführung in anderen Threads Bei der Neuordnung ist diese Beobachtung im Allgemeinen ungeordnet (passiert-vorher-Prinzip).

(Verwandte Tutorials empfohlen: Java-Eingabeprogramm)

4. Was ist das Prinzip der Aktualisierung von Multithread-Sperren?

In Java gibt es vier Sperrzustände: zustandslose Sperre, voreingenommene Sperre, leichter Sperrzustand und schwerer Sperrzustand eskaliert. Schlösser können hochgestuft, aber nicht herabgestuft werden.

Illustrierter Prozess der Sperrenaktualisierung:

Fragen zum neuen Java-Interview 2020 – Multi-Threading (3)

5. Was ist ein Deadlock?

Deadlock bezieht sich auf ein Blockierungsphänomen, das dadurch verursacht wird, dass zwei oder mehr Prozesse während der Ausführung um Ressourcen konkurrieren oder miteinander kommunizieren. Ohne äußere Kraft können sie nicht fortfahren. Zu diesem Zeitpunkt befindet sich das System in einem Deadlock-Zustand oder das System hat einen Deadlock. Diese Prozesse, die immer aufeinander warten, werden Deadlock-Prozesse genannt.

Empfohlenes Tutorial: Java-Interviewfragen

Das obige ist der detaillierte Inhalt vonFragen zum neuen Java-Interview 2020 – Multi-Threading (3). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen