Java da Thread ve Synchronized Kullanımı

Java da Thread ve Synchronized Kullanımı;



THREAD CLASSI


public class BankaHesap {

    private double bakiye;

    public BankaHesap(double bakiye) {
        this.bakiye = bakiye;

    }

    public synchronized void ParaCek(String kim, double tutar) {
        if (tutar > bakiye) {
            System.out.println(kim + " hesapta istenilen miktarda para yok: " + bakiye);
            return;
        } else {
            bakiye -= tutar;
            System.out.println(kim + " para cekti: ");
        }
    }

}

-------------------------------------------------------------

ANA CLASS



public class ParaCek {

    public static void main(String[] args) {
        BankaHesap hesap = new BankaHesap(1000);

        ParaCekmeThread t1 = new ParaCekmeThread(hesap, "thread 1", 600);
        ParaCekmeThread t2 = new ParaCekmeThread(hesap, "thread 2", 600);

        t1.start();
        t2.start();

    }

    static class ParaCekmeThread extends Thread {

        BankaHesap hesap;
        String isim;
        double tutar;

        public ParaCekmeThread(BankaHesap hesap, String isim, double tutar) {
            this.hesap = hesap;
            this.isim = isim;
            this.tutar = tutar;

        }

        public void run() {

            try {
                Thread.sleep(10);
            } catch (Exception e) {
            }

            hesap.ParaCek(isim, tutar);

        }

    }

}

Yorumlar

Bu blogdaki popüler yayınlar

Tek yönlü bağlı liste

ASSEMBLY 16F877 - 16F877A BASLANGIC UYGULAMALARI

Java' da yığıt