线程
ice_time1
这个作者很懒,什么都没留下…
展开
-
synchronized和lock的区别
先说一下什么是同步(synchronized和lock都是实现这个的): 每一个对象都有一个互斥的锁标记和一个锁池,哪个线程拥有锁标记哪个才能访问,没有锁标记的线程就进入锁池,保证同步代码块中只有一个线程 synchronized修饰的代码块是对括号内的对象加锁,只有拥有锁标记的线程能访问; synchronized修饰的函数方法是整个方法范围内对当前原创 2015-09-01 14:26:23 · 924 阅读 · 0 评论 -
sleep和wait的区别
如果这下面说的看不太懂,可以先去看一下上一篇可能会好一点;线程调用了wait()方法的话,该线程将会自己所有的锁标记和CPU的占用,并且进入等待池(wait pool),等待池的状态是阻塞状态;顺便说一下对应的notify()方法,会从等待池中释放一个线程,这个线程是有系统决定的 ,让该线程进入该对象的锁池(lock pool),等待得到锁标记,然后再执行;notifyall()方法取代n原创 2015-09-01 15:47:45 · 347 阅读 · 0 评论