Die Programmiersprache Java ermöglicht es Programmierern, Code zu schreiben , dass wird parallel auf verschiedenen Threads laufen . Wenn der Computer mehr als einen Prozessorkern , werden die Fäden wirklich parallel laufen , sonst wird der Prozessor über alle ausführbaren Threads Multiplex werden. Wenn mehrere Threads auf demselben freigegebenen Ressource zu betreiben , kann der resultierende Code nur dann richtig, wenn nur ein Thread zu einem Zeitpunkt arbeitet auf diese Ressource . Synchronized Methoden gewährleistet werden , um diese Eigenschaft zu erhalten : zu einem bestimmten Zeitpunkt , allenfalls ist eine Instanz eines synchronisierte Methode erlaubt, die Ressource zu nutzen . Anleitung
1
Declare eine eigene Klasse , die synchronisiert Code enthalten wird , wie im folgenden Beispielcode:
public class SynchronizationExample () { }
Seite 2
Declare die freigegebene Ressource als "private" Klasse -Mitglied, wie im folgenden Beispielcode:
public class SynchronizationExample () {
private int AccountBalance = 0;
}
3
Deklarieren Sie die Methoden, die auf die gemeinsam genutzte Ressource zu betreiben mit dem " synchronisiert" Schlüsselwort , wie im folgenden Beispielcode:
public class SynchronizationExample () {
private int AccountBalance = 0;
public void Kaution (int betrag) {
AccountBalance = AccountBalance + Betrag ;
< p >}
public void Rückzug (int betrag) {
AccountBalance = AccountBalance - Menge ;
} }
Seit sie synchronisiert sind, werden Methoden " Kaution " und " Rückzug" nicht parallel ausgeführt werden , und wenn man braucht, um zu starten, wenn das andere ausgeführt wird, wird es zu warten, bis die erste abgeschlossen ist starten. Dies macht die Änderungen an gemeinsam genutzten Ressource " AccountBalance " thread-safe .