java里多线程的wait问题

[复制链接]
查看11 | 回复3 | 2012-1-2 21:10:37 | 显示全部楼层 |阅读模式
我这样给你说不知道你理解不理解,可能我的例子举的不好你看不明白。在谈到多线程的时候我们常说的一个概念是锁。这里我们把它想象成为一把真正的锁。把线程想象成一个个动态的人,他们想进去一个屋子,但是通往这个屋子的门有一个洞,这个洞只能同时一个人钻进去。这就相当于synchronized 的作用。这个屋的们上有一把锁。锁就等于condition。满足这个条件就相当于能打开锁。这时要注意这个锁指只能挂在屋的门上的,就相当于你说的资源类上面。而不能挂在人上面,因为人是动态的,挂在某个人身上别的人就找不到了。其实在jvm里面它是用跟资源类相关的一个标志位来表示的。不知道这样解释可否。...
回复

使用道具 举报

千问 | 2012-1-2 21:10:37 | 显示全部楼层
喜欢思考绝对是好事,但我希望你对于一个为题你能自己分析的透彻点,wait()当然是线程去等待,线程讲的就是电脑的cpu如何工作,而你说的资源了只是数据也就是你给电脑的一种指令,数据有什么等待的说法吗?还有你说上面的那个程序不会出来,你那个while的条件是什么,你都没吧,如果是死循环那当然不会出来了。...
回复

使用道具 举报

千问 | 2012-1-2 21:10:37 | 显示全部楼层
博客园去啊...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行