Program Dining Philosopher dengan Java

Program Dining Philosopher dengan Java

Jika sebelumnya saya sudah memposting artikel tentang Definisi Dining Philisopher, kali ini saya akan memposting contoh program dari implementasi Dining Philopher dengan menggunakan java.

Berikut listing potongan programnya:

<br />
 class Semaphore {<br />
       private int value;<br />
       public Semaphore(){<br />
           value=0;<br />
       }<br />
       public Semaphore(int i){<br />
            value=i;<br />
       }<br />
       public synchronized void Wait(){<br />
             value--;<br />
             if(value &lt;= 0){<br />
                  try{<br />
                      wait();<br />
                  }<br />
                 catch (InterruptedException e){<br />
                       System.exit(-1);<br />
                 }<br />
            }<br />
       }<br />
       public synchronized void Signal(){<br />
            value++;<br />
            if(value &lt;= 0)<br />
            notify();<br />
      }<br />
}</p>
<p>class P{<br />
      public static void Print(){<br />
          for(int i=0;i&lt;=DiningPhilosopher_1.Num;i++)<br />
             System.out.print(DiningPhilosopher_1.philosophers[i].Status+&quot; &quot;);<br />
             System.out.println('');<br />
     }</p>
<p>}</p>
<p>class Philosophers extends Thread{<br />
     private int Id;<br />
     public String Status;<br />
     private int Factor=3000;</p>
<p>     public Philosophers (int x){<br />
         Id=x;<br />
         Status=&quot;IsHungry&quot;;<br />
     }<br />
}<br />
 

Hasil running programnya seperti gambar di bawah in:
 
sudah tahu hasilnya kan seperti apa programnya. karena di atas cuman sekedar potongannya saja. untuk listing program yang lengkap silahkan download disini.
Selamat mencoba. ……….. ^_^

Share