Commit 0a400444 by Patryk Czarnik

synchronized

parent 42e2ce95
......@@ -23,7 +23,7 @@ public class Konto {
return numer;
}
public int getSaldo() {
public synchronized int getSaldo() {
return saldo;
}
......@@ -32,7 +32,11 @@ public class Konto {
return "Konto nr " + numer + ", wł. " + wlasciciel + ", saldo: " + saldo;
}
public void wplata(int kwota) {
// Gdy metoda jest synchronizowana, to zapobiega jednoczesnemu wykonywaniu jej treści przez równe wątki.
// Dokładnie: Gdy jeden wątek wykonuje JAKĄKOLWIEK metodę synchronizowaną na danym obiekcie,
// to żaden INNY wątek nie może rozpocząć wykonywania JAKIEJKOLWIEK metody synchronizowanej NA TYM SAMYM OBIEKCIE.
// Wątek, który próbuje wejść do takiej metody, zostanie wstrzymany i wpuszczony dopiero, gdy obiekt będzie wolny.
public synchronized void wplata(int kwota) {
if(kwota <= 0) {
throw new IllegalArgumentException("Ujemna kwota w wplata");
}
......@@ -40,7 +44,7 @@ public class Konto {
notify();
}
public void wyplata(int kwota) throws BrakSrodkow {
public synchronized void wyplata(int kwota) throws BrakSrodkow {
if(kwota <= 0) {
throw new IllegalArgumentException("Ujemna kwota w wyplata");
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment