零叶独舞
Published on 2014-07-25 / 15 Visits
0
0

模拟线程死锁(几率出现)

package tread; /*线程死锁 * 过度的线程同步可能造成死锁,死锁的操作一般是在程序运行的时候才会可能出现的 * */ public class DeadLockDemo {     public static void main(String[] args) {             new LockThread();     } } //顾客 class Customer{     public synchronized void say(Waiter w) {         System.out.println("顾客说:先做再给钱");         w.doService();     }     public synchronized void doService(){         System.out.println("同意了先做,再给钱");     } } //服务员 class Waiter{     public void say(Customer c) {         System.out.println("服务员说:先给钱,再做");         c.doService();     }     public synchronized void doService() {         System.out.println("同意了先做,再给钱");     } } class LockThread implements Runnable{     Customer c = new Customer();     Waiter w = new Waiter();     public LockThread(){         new Thread(this).start();         w.say(c);     }     public void run() {         c.say(w);     } }

Comment