A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 冯佩 中级黑马   /  2013-2-19 14:40  /  1529 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在线程运行时,内存中会建立一个线程池,等待的线程都存放在线程池中,notify()通常只唤醒第一个等待的线程,如果多个线程存放在线程池中,可有什么方法唤醒指定的线程吗?线程池在内存中的结构是什么样的,是不是类似于数组一样,可以给每个存放的线程加有索引?

评分

参与人数 1技术分 +1 收起 理由
Rancho_Gump + 1

查看全部评分

2 个回复

倒序浏览
本帖最后由 黑马王振宇 于 2013-2-19 14:58 编辑

notify()唤醒的线程是线程池中wait的任意一个线程,不是第一个wait的线程,不信去看api
唤醒指定线程用1.5以后的Condition对象的signal和await方法。毕姥爷视频里有说
回复 使用道具 举报
我记得毕老师说的是唤醒第一个等待的线程。api 文档中确实是说唤醒任意一个。不过,还是不纠结这个问题了,直接使用Lock锁机制和等待唤醒机制比较好一些。有新的干啥不用呢?!

点评

赞一个!  发表于 2013-2-19 15:47
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马