多线程中国yeild()与sleep()的话区别

wawlian 2008-06-15 07:35:27
多线程中国yeild()与sleep()的话区别?
...全文
258 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shengli_liao 2008-06-16
  • 打赏
  • 举报
回复
还有人用yeild么?
我从来作线程都是定义一个死循环
循环结束,线程就死了
while(running){
try{
//statement
sleep(1000);
}
catch(Exception ex){
//.........
}
}
netboygg 2008-06-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 java2000_net 的回复:]
yeild 会主动释放CPU
sleep 不会

yield()
1) 通过yield ()函数,可使线程进入可执行状态,排程器从可执行状态的线程中重新进行排程。所以调用了yield()的函数也有可能马上被执行。
2) 当调用yield ()函数后,线程不会释放它的“锁标志”。

sleep()
1) sleep ()函数有一个参数,通过参数可使线程在指定的时间内进入停滞状态,当指定的时间过后,线程则自动进入可执行状态。
2) 当调用sleep ()函数后…
[/Quote]
netboygg 2008-06-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 wawlian 的帖子:]
多线程中国yeild()与sleep()的话区别?
[/Quote]
null1null 2008-06-15
  • 打赏
  • 举报
回复
楼主多看看API文档
sagezk 2008-06-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 java2000_net 的回复:]
yeild 会主动释放CPU
sleep 不会

yield()
1) 通过yield ()函数,可使线程进入可执行状态,排程器从可执行状态的线程中重新进行排程。所以调用了yield()的函数也有可能马上被执行。
2) 当调用yield ()函数后,线程不会释放它的“锁标志”。

sleep()
1) sleep ()函数有一个参数,通过参数可使线程在指定的时间内进入停滞状态,当指定的时间过后,线程则自动进入可执行状态。
2) 当调用sleep ()函数后…
[/Quote]
老紫竹 2008-06-15
  • 打赏
  • 举报
回复
yeild 会主动释放CPU
sleep 不会

yield()
1) 通过yield ()函数,可使线程进入可执行状态,排程器从可执行状态的线程中重新进行排程。所以调用了yield()的函数也有可能马上被执行。
2) 当调用yield ()函数后,线程不会释放它的“锁标志”。

sleep()
1) sleep ()函数有一个参数,通过参数可使线程在指定的时间内进入停滞状态,当指定的时间过后,线程则自动进入可执行状态。
2) 当调用sleep ()函数后,线程不会释放它的“锁标志”。

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧