Advertisement
piffy

TogliStallo.java

Aug 24th, 2014
360
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.57 KB | None | 0 0
  1. public class TogliStallo {
  2.  
  3. public static Object Lock1 = new Object();
  4.    public static Object Lock2 = new Object();
  5.    private static int finito1,finito2;
  6.    
  7.    public static void main(String args[]) {
  8.       finito1=0;
  9.       Thread1 T1 = new Thread1();
  10.       Thread2 T2 = new Thread2();
  11.       T1.start();
  12.       T2.start();
  13.       while (finito1!=2 && finito2!=2) try { Thread.sleep(10); }
  14.             catch (InterruptedException e) {};
  15.       System.out.println("Fatto!");
  16.    }
  17.    
  18.    private static class Thread1 extends Thread {
  19.       @Override
  20.       public void run() {
  21.          synchronized (Lock1) {
  22.             System.out.println("Thread 1: In possesso del lock 1...");
  23.             try { Thread.sleep(10); }
  24.             catch (InterruptedException e) {}
  25.             System.out.println("Thread 1: In attesa del lock 2...");
  26.             synchronized (Lock2) {
  27.                System.out.println("Thread 1: In possesso del lock 1 e 2...");
  28.                finito1++;finito2++;
  29.             }
  30.          }
  31.       }
  32.    }
  33.    
  34.    private static class Thread2 extends Thread {
  35.       @Override
  36.       public void run() {
  37.          synchronized (Lock2) {
  38.             System.out.println("Thread 2: In possesso del lock  2...");
  39.             try { Thread.sleep(10); }
  40.             catch (InterruptedException e) {}
  41.             System.out.println("Thread 2:  In attesa del lock 1...");
  42.             synchronized (Lock1) {
  43.                System.out.println("Thread 2: In possesso del lock 1 e 2...");
  44.                finito1++;finito2++;
  45.             }
  46.          }
  47.       }
  48.    }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement