Java programmeringssprog tillader programmører at skrive kode, der vil køre parallelt på forskellige tråde . Hvis computeren har mere end én processor kerne, vil trådene virkelig køre parallelt , ellers processoren blive multiplex for alle kørbar tråde. Når flere tråde operere på den samme delte ressource , kan den resulterende kode kun være korrekt, hvis kun én tråd ad gangen opererer på denne ressource. Synkroniserede metoder er garanteret til at bevare denne ejendom: på ethvert givet tidspunkt , ved de fleste , er en instans af en synkroniseret metode lov til at bruge ressourcen. Instruktioner
1
Erklær en separat klasse, der vil indeholde synkroniseret kode , som i følgende kodeeksempel : Hej
public class SynchronizationExample () {
}
2
Erklær den delte ressource som en " privat" class medlem som i følgende kodeeksempel : Hej
public class SynchronizationExample () {
private int accountBalance = 0;
}
3
Erklær de metoder , der opererer på den delte ressource ved at bruge " synkroniseret " søgeord , som i følgende kodeeksempel : Hej
public class SynchronizationExample () {
private int accountBalance = 0;
offentlig synkroniseret void depositum ( int beløb) {
accountBalance = accountBalance + beløb
< p >}
offentlig synkroniseret void tilbagetrækning ( int beløb) {
accountBalance = accountBalance - beløb
}
}
Siden de er synkroniserede, vil metoder " indskud" og "tilbagetrækning" ikke køre parallelt , hvis man skal til at starte , når den anden er fuldbyrdende, vil det have at vente, indtil den første til at starte fuldført. Dette gør de ændringer til delt ressource " accountBalance " thread- safe.