首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

多线程事例:wait与notify、sleep

2012-09-19 
多线程例子:wait与notify、sleep2011-11-09 22:06:05,930 INFO [sure.Test] - t1 start and sleep2011-11-0

多线程例子:wait与notify、sleep

2011-11-09 22:06:05,930 INFO [sure.Test] - t1 start and sleep2011-11-09 22:06:05,930 INFO [sure.Test] - t1 wait begin2011-11-09 22:06:05,930 INFO [sure.Test] - main lock begin2011-11-09 22:06:05,930 INFO [sure.Test] - t1 get lock, wait begin2011-11-09 22:06:10,930 INFO [sure.Test] - sleep end2011-11-09 22:06:10,930 INFO [sure.Test] - main get lock2011-11-09 22:06:10,930 INFO [sure.Test] - notify2011-11-09 22:06:20,930 INFO [sure.Test] - sleep 10000 end2011-11-09 22:06:20,930 INFO [sure.Test] - main wait begin 2011-11-09 22:06:20,930 INFO [sure.Test] - t1 wait end,release lock2011-11-09 22:06:20,930 INFO [sure.Test] - main wait end2011-11-09 22:06:20,930 INFO [sure.Test] - main lock end2011-11-09 22:06:25,930 INFO [sure.Test] - t1  wait end

这种情况不会造成死锁阻塞。
由于这两个线程都谁都可能先进入同步块中,所以就造成了两个截然不同的情况。但是上面第一种情况就肯定是子进程先进入同步块,因为main进程用sleep拖延了。

热点排行