Heim Java JavaInterview Fragen Vorstellungsgespräch für einen Java-Ingenieur – flüchtiges Schlüsselwort

Vorstellungsgespräch für einen Java-Ingenieur – flüchtiges Schlüsselwort

Nov 03, 2020 pm 03:47 PM
java volatile Interview

Vorstellungsgespräch für einen Java-Ingenieur – flüchtiges Schlüsselwort

1. Was genau macht volatile? Es stellt die Sichtbarkeit sicher, wenn verschiedene Threads diese Variable bearbeiten, d. h. wenn ein Thread den Wert einer bestimmten Variablen ändert, ist der neue Wert sofort für andere Threads sichtbar. Die Atomarität ist nicht garantiert (Thread unsicher). 2. Vergleich des synchronisierten Schlüsselworts und des flüchtigen Schlüsselworts

Das flüchtige Schlüsselwort ist eine leichte Implementierung der Thread-Synchronisierung, daher ist die Leistung von flüchtig definitiv besser als die des synchronisierten Schlüsselworts. Das Schlüsselwort volatile kann jedoch nur für Variablen verwendet werden und das Schlüsselwort synchronisiert kann Methoden und Codeblöcke ändern.

(Weitere Empfehlungen für verwandte Interviewfragen: Java-Interviewfragen und -antworten)

synchronisiertes Schlüsselwort wurde nach JavaSE1.6 eingeführt, hauptsächlich einschließlich voreingenommener Sperren, die eingeführt wurden, um den durch den Erwerb von Sperren und die Freigabe von Sperren verursachten Leistungsverbrauch zu reduzieren wurde nach leichten Sperren und anderen Optimierungen erheblich verbessert. In der tatsächlichen Entwicklung gibt es noch mehr Szenarien, in denen das synchronisierte Schlüsselwort verwendet wird.

Der Multithread-Zugriff auf das Schlüsselwort volatile wird nicht blockiert, das synchronisierte Schlüsselwort kann jedoch blockieren.

Das Schlüsselwort volatile kann die Sichtbarkeit der Daten garantieren, aber nicht die Atomizität der Daten. Das synchronisierte Schlüsselwort kann beides garantieren (synchronized garantiert drei Haupteigenschaften: Atomizität, Ordnung und Sichtbarkeit).

Das flüchtige Schlüsselwort wird hauptsächlich verwendet, um die Sichtbarkeit von Variablen zwischen mehreren Threads zu lösen, während das synchronisierte Schlüsselwort die Synchronisierung des Ressourcenzugriffs zwischen mehreren Threads löst.

Verwandte Empfehlungen:

Erste Schritte mit Java

Das obige ist der detaillierte Inhalt vonVorstellungsgespräch für einen Java-Ingenieur – flüchtiges Schlüsselwort. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP-Tutorial
1510
276
Bereitstellung einer Java -Anwendung in Kubernetes mit Docker Bereitstellung einer Java -Anwendung in Kubernetes mit Docker Aug 08, 2025 pm 02:45 PM

Containerisierte Java-Anwendung: Erstellen Sie eine Dockerfile, verwenden Sie ein grundlegendes Bild wie Eclipse-Temurin: 17-Jre-Alpine, kopieren Sie die JAR-Datei und definieren Sie den Startbefehl, erstellen Sie das Bild über Dockerbuild und führen Sie lokal mit Dockerun aus. 2. Drücken Sie das Bild in die Containerregistrierung: Verwenden Sie Dockertag, um das Bild zu markieren und zu Dockerhub und anderen Registern zu drücken. Sie müssen sich zuerst bei DockerLogin anmelden. 3.. Bereitstellen in Kubernetes: Schreiben Sie die Bereitstellung. Yaml, um die Bereitstellung zu definieren, die Anzahl der Replikate, Containerbilder und Ressourcenbeschränkungen festlegen und den Dienst schreiben.yaml zum Erstellen zu erstellen

Wie implementieren Sie einen einfachen TCP -Client in Java? Wie implementieren Sie einen einfachen TCP -Client in Java? Aug 08, 2025 pm 03:56 PM

Importjava.ioandjava.net.socketfori/oandsocketcommunication.2.CreateSocketObjectToConnectTotheserverusednameAnDport.3.useprintSertosendDataviaoutputStreamandBufferedReadereadServerresponSfrend

Behoben: Windows Update konnte nicht installiert werden Behoben: Windows Update konnte nicht installiert werden Aug 08, 2025 pm 04:16 PM

RunthewindowsUpdatetrouBleshooterviaSettings> Update & Sicherheit> FehlerbehebungOautomatischfixcommonissues.2.

Was ist der Serialisierungsprozess für ein Java -Objekt? Was ist der Serialisierungsprozess für ein Java -Objekt? Aug 08, 2025 pm 04:03 PM

JavaserializationConvertsanObject'SstateIntoAnabyTestreamForstorageOrtransmission, und Deserialization -ReconstructStheObjectFromThatstream.1. ToenableSerialization, aclassMustImplementtheSerializableInterface

Wie man eine Weile in Java einsetzt Wie man eine Weile in Java einsetzt Aug 08, 2025 pm 04:04 PM

AwhileloopinjavarePeadexecutesCodeaslongasttitionistre; 2.initializeacontrolvariableBeforetheloop;

Was ist eine Hashmap in Java? Was ist eine Hashmap in Java? Aug 11, 2025 pm 07:24 PM

AhasMapinjavaisadatastructurethatstoreskey-valuepairsforefficityRieval, Insertion und Delettion.itusushtheKey'ShashCode () methodTodeterminestoragelocationAnlowlowsaversaveryo (1) TimEcomplexityforget () und -Argine

So erstellen und verwenden Sie ein Array in Java So erstellen und verwenden Sie ein Array in Java Aug 11, 2025 pm 04:00 PM

TocreateAndueanArrayinjava, FirstDeclarethearraywithDedatatypeNDSquarebrackets, dannInstantiate -withenewKewordorinitializeTDirectlyWithValues; 1.DeclareandCreatatype [] arrayname = newdatatype [grizatatype

Wie erstellt man einen Thread in Java? Wie erstellt man einen Thread in Java? Aug 11, 2025 pm 01:34 PM

YoucancreateatheadinjavabytendingTheTheadhreadClassOrimplementingTherunnableInterface.2.EutendingThreadinvolvesCreresedaclassTheatoverridestherun () methodeCallingStart () onaninstance.3.implementingRunNableRequiresDefiningTherun () methodInaklassTheatimple

See all articles