sleep是线程什么也不做,等一个时间
wait是等待其它线程用notify唤醒,直到超过wait方法中指定的时间
wait是等待其它线程用notify唤醒,直到超过wait方法中指定的时间
解决方案 »
- spring mvc页面标签问题
- Dispatcher initialization failed 请高手帮忙
- 正则表达式分析网页问题
- 请问有在上海做Java的程序员吗?招人吗?
- Hibernate3.1+Spring2.0下无错误提示却不执行操作
- JSP页面可以使用request.setAttribute()进行传值吗?
- 一个奇怪的现象 高手来看看
- 请教jb和weblogic编写cmp问题,谢谢!
- 简单的ejb发布问题
- up有分,请教J2EE
- Win2003+IIS6+Resin 奇怪的问题,高分求解!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 有关DecimalFormat格式化字符串的问题???
wait 是必须notify唤醒sleep是人为地调用,wait除了人为地调用外,线程可能由于I/O阻塞造成的wait不可以运行状态是由可运行状态转变过来的,一个可运行状态的线程如果遇到挂起(suspend)
操作、等待(sleep)操作、睡眠(sleep)操作,就会进入不可运行状态。另外如果一个线程跟I/O操作有关,外设的速度远远低于处理器的速度,所以线程可能被阻塞,从而进入不可运行状态。外设处理完后,该线程会自动进入可运行状态。通常由三种途径可以把一个不可运行的状态转为可运行状态。一是自动恢复,通过sleep或者由于I/O阻塞造成的not runnable可以自动恢复;二是由resumen来恢复到可运行状态(由suspend挂起);三是由notify方法来恢复处于wait的线程。
wait() : 时间到达后立刻启动