发信人: chanix()
整理人: zjxyz(2002-04-10 19:11:20), 站内信件
|
Object 的 wait notify nofityAll 是实现同步锁的方式之一。这种方式好象很少人知道并能熟练掌握。可能是因为 Object 太基础了,所以反而没什么人去看吧。我倒是觉得非常好用,在我写的服务器运行平台上有大量的使用。
一个线程如何才能拥有一个对象的 monitor,使线程能阻塞在该对象上?
方法有三:
调用一个该对象的实例的同步方法(By executing a synchronized instance method of that object. )
调用一段以该对象的实例为同步对象的代码(By executing the body of a synchronized statement that synchronizes on the object.)
调用该对象的同步静态类方法(For objects of type Class, by executing a synchronized static method of that class.)
就我自己的体会,我认为这种方式很象 Unix 中的信号灯。
可以看看《操作系统原理》和《操作系统原理及实现》。对学习 Java 底层机制非常有帮助的。
---- █████████
█┌─────┐█
█│网易GZ社区│█
█│ JAVA版 │█
█│ 灌★水 │█
█│ 专用章 │█
█└─────┘█
█████████
|
|