Moderne Prozessoren mit mehreren Kernen können die Vorteile der gleichzeitigen Java -Anwendungen nutzen . Eine gleichzeitige Anwendung ist eine, die mehrere Operationen gleichzeitig ausgeführt . Concurrency stellt einzigartige Herausforderungen , die angegangen , um Probleme zu vermeiden müssen. Ein großes Problem tritt auf, wenn zwei Threads der Ausführung jeder Zugriff das gleiche Verfahren gleichzeitig . Ein Thread kann mit anderen stören und machen Daten unzuverlässig. Um dieses Problem zu kontrollieren , können Sie verhindern den gleichzeitigen Zugriff auf ein Verfahren, das die Synchronisierung von Java. Things You
Java Software Development Kit mit NetBeans Integrated Development Environment (IDE) brauchen Bundle
anzeigen Weitere Anweisungen
1
laden NetBeans IDE , indem Sie auf das Programmsymbol . Wenn das Programm geladen wird, auf " Neu /New Project" navigieren und wählen Sie " Java Application " aus der Liste auf der rechten Seite des Bildschirms. Eine neue Quellcode-Datei erscheint in der NetBeans Texteditor. Der Source-Code -Datei enthält eine leere Hauptfunktion
2
deklarieren Sie eine statische Variable namens x , indem er die folgenden in der Hauptfunktion im Quellcode : . Static int x = 0;
< br > Seite 3
erstellen synchronisierte Methode , indem Sie die "synchronisiert" Schlüsselwort zur Deklaration der Methode . Eine synchronisierte Methode kann nur von einem Thread zu einem Zeitpunkt abgerufen werden, wodurch Inkonsistenzen . Um eine Methode namens " methodName " synchronisiert erklären , schreiben die folgende Erklärung in der Quellcodedatei : public methodName ()
4
Schrittweite eine ganze Zahl , indem Sie die folgende Anweisung in den geschweiften Klammern des Verfahrens : return x + +;
5
Rufen Sie die synchronisierte Methode . Um zu verstehen, was Synchronisierung vollbringt , zuerst wohl die Methode nicht synchronisiert wurde . Wenn zwei parallele Threads gleichzeitig die Methode aufrufen , werden sie jeweils den Wert der Variable x . Da x bei 0 beginnt , wird das Ergebnis eines Inkrementoperation x = 1 sein. Dies ist ein Problem , da das Verfahren zweimal genannt wurde, und somit x gleich 2 ist . Da " methodName " synchronisiert wird , wird nur eine der beiden parallelen Threads die Methode zu einem Zeitpunkt in Kraft. Ein Thread wird geben " methodName " Schrittweite x und Ausgang. Dies ermöglicht es dem zweiten Thread zu " methodName " einzutreten und die den zweiten Erhöhungsschritt Betrieb . Mit dem Schlüsselwort synchronized , zwei Anrufe " methodName " Suchergebnis in x gleich 2 . Ein Aufruf der Methode kann wie folgt geschrieben werden : methodName ();