多线程,有点晕 本帖最后由 ontrackfor19888 于 2010-10-31 18:36:50 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 name是你当前new 的线程线程调用wait方法后会把当前线程放入等待池,并释放synchronized锁,下面那句不会执行线程创建后一直存在,wait()并不会杀死线程,只有执行完毕才会死亡 问1:这两个name打印出来分别为"thread-0"和"thread-1",分别指哪个线程啊???应该是你线程的执行顺序 建议你在new 完thread后 用setName 给每个线程起个名字 这样就知道是哪个了问2:这里滴代码会执行吗?为什么啊?就像1楼所说 wait 已经将他的同步锁释放 并将线程放到等待池问3:怎么这个状态一直是new 啊?你加了同步锁每次都是针对一个对象 wait 最好不要用 notify() 是随机在等待池中唤醒一个线程即使是notifyAll() 全部唤醒 所有线程也只会有一个线程会争用到当前执行的时间片多线程 是很复杂 调试也很麻烦所以用之前想想 是否必须要用他 当然纯粹的学习是没问题的 个人观点纯属虚构 如有雷同纯属雷同 jvm垃圾回收周期 程序为什么会被挂起 ibatis调用过程,得不到返回 转让一java空间 买那本J2EE书好 连接池的方法比较 是不是 TomcatPlugin 的bug? 安装时j2sdk1.4 for linux时提示/tmp空间不够怎么解决? 有人知道有哪些在线编辑word或者excel文档的网站么? JDBC连接Sql Server2000出错,请指教 Action层报空指针异常 关于Comparator struts2 使用DomainModel自动封装form值的问题
线程调用wait方法后会把当前线程放入等待池,并释放synchronized锁,下面那句不会执行
线程创建后一直存在,wait()并不会杀死线程,只有执行完毕才会死亡
应该是你线程的执行顺序 建议你在new 完thread后 用setName 给每个线程起个名字 这样就知道是哪个了问2:这里滴代码会执行吗?为什么啊?
就像1楼所说 wait 已经将他的同步锁释放 并将线程放到等待池问3:怎么这个状态一直是new 啊?
你加了同步锁每次都是针对一个对象
wait 最好不要用
notify() 是随机在等待池中唤醒一个线程
即使是notifyAll() 全部唤醒 所有线程也只会有一个线程会争用到当前执行的时间片
多线程 是很复杂 调试也很麻烦
所以用之前想想 是否必须要用他 当然纯粹的学习是没问题的
个人观点纯属虚构 如有雷同纯属雷同