黑马程序员技术交流社区

标题: 关于死锁的问题? [打印本页]

作者: 赵太云    时间: 2013-7-15 19:04
标题: 关于死锁的问题?
本帖最后由 赵太云 于 2013-7-16 20:30 编辑

     以下是一个死锁的程序。
    在实际开发,在哪种情况下可能会遇到死锁的问题呢????
  1. public class Test{
  2.         public static void main(String[] args){
  3.                 new Thread(new ThreadTest1()).start();
  4.                 new Thread(new ThreadTest2()).start();
  5.         }
  6. }

  7. class Lock{
  8.         public static Object lock1 = new Object();
  9.         public static Object lock2 = new Object();
  10. }

  11. class ThreadTest1 implements Runnable{
  12.         public void run(){
  13.                 while (true){
  14.                         synchronized(Lock.lock1){
  15.                                 synchronized(Lock.lock2){
  16.                                         System.out.println("这个能输出?  threadTest1");
  17.                                 }
  18.                         }
  19.                 }
  20.         }
  21. }

  22. class ThreadTest2 implements Runnable{
  23.         public void run(){
  24.                 while (true){
  25.                         synchronized(Lock.lock2){
  26.                                 synchronized(Lock.lock1){
  27.                                         System.out.println("这个能输出?  threadTest2");
  28.                                 }
  29.                         }
  30.                 }
  31.         }
  32. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2