notifyalljava使用notifyall无法恢复线程

notifyall  时间:2021-06-10  阅读:()

在JAVA中,被wait()暂停的线程能否在notifyAll()时获得该线程被暂停的时间?

wait的时候记录时间,再执行的记录下就行了。

public?class?BaiDuZhiDao6?{ public?static?void?main(String[]?args)?{ Object?lock?=?new?Object(); MyThread1?m1?=?new?MyThread1(); MyThread2?m2?=?new?MyThread2(); m1.setLock(lock); m2.setLock(lock); m1.start(); m2.start(); } } class?MyThread1?extends?Thread?{ private?Object?lock; public?void?setLock(Object?lock)?{ this.lock?=?lock; } public?void?run()?{ try?{ synchronized(lock){ System.out.println("wait开始时间"?+?System.currentTimeMillis()); lock.wait(); System.out.println("等待结束时间"?+?System.currentTimeMillis()); } }?catch?(Exception?e)?{ //?TODO:?handle?exception e.printStackTrace(); } } } class?MyThread2?extends?Thread?{ private?Object?lock; public?void?setLock(Object?lock)?{ this.lock?=?lock; } public?void?run()?{ try?{ synchronized(lock){ Thread.sleep(5000); lock.notifyAll();; } }?catch?(Exception?e)?{ //?TODO:?handle?exception e.printStackTrace(); } } }

java中yeild()方发,wait()方法和sleep()有什么区别

yeild():线程暂时交出CPU的控制权,也就是从running状态进入到runnable状态,但仍然有可能被再次调度 wait():在其他线程调用此对象的 notify() 方法或 notifyAll() 方法时线程才会继续执行 sleep():线程指定睡眠一段时间

JAVA线程问题 用wait();了 用notifyAll();怎么没唤醒啊!菜鸟求解!!最好有代码!谢谢!

楼主,你写错了哦,你的线程是没有循环的,执行完一次就结束了,当然不会一直执行下去啊,改成下面的:(加一个while循环) public class Work_4_2 { public static void main(String[] args) { Ticket myTicket = new Ticket(); new Thread(myTicket).start(); new Thread(myTicket).start(); new Thread(myTicket).start(); new Thread(myTicket).start(); new Thread(myTicket).start(); } } class Ticket implements Runnable { static int a = 100; public void run() { synchronized (this) { while (true) { if (a < 0) { try { wait(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } System.out.println(a--); notifyAll(); } } } }

关于Java多线程。下面的程序把notifyAll注释掉去掉也能输出wait()之后的语句,为什么

c对象是一个Thread对象,该thread执行完毕后,会调用notifyAll方法,唤醒等待在该线程对象上的所有线程。

synchronized (this) { try { System.out.println(Thread.currentThread() + "等待计算结果。





"); this.wait(); 就会一直等待

java使用notifyall无法恢复线程

可以把代码都粘贴出来吗 ? 我好调一下 你上面用synchronized加了锁 draw()也不知到干了什么,所以极有可能死锁了。







代码不全没法看到问题

美得云(20元)香港特价将军澳CTG+CN2云服务器

美得云成立于2021年,是一家云产品管理服务商(cloud)专业提供云计算服务、DDOS防护、网络安全服务、国内海外数据中心托管租用等业务、20000+用户的选择,43800+小时稳定运行香港特价将军澳CTG+CN2云服务器、采用高端CPU 优质CN2路线 SDD硬盘。香港CTG+CN22核2G3M20G数据盘25元点击购买香港CTG+CN2​2核2G5M30G数据盘39元点击购买香港CTG+CN...

Hostodo:4款便宜美国vps七折优惠低至$13/年;NVMe阵列1Gbps带宽,免费DirectAdmin授权

hostodo怎么样?快到了7月4日美国独立日,hostodo现在推出了VPS大促销活动,提供4款Hostodo美国独立日活动便宜VPS,相当于7折,低至$13/年,续费同价。Hostodo美国独立日活动结束时间不定,活动机售完即止。Hostodo商家支持加密数字货币、信用卡、PayPal、支付宝、银联等付款。Hostodo美国独立日活动VPS基于KVM虚拟,NVMe阵列,1Gbps带宽,自带一个...

iON Cloud:新加坡cn2 gia vps/1核/2G内存/25G SSD/250G流量/10M带宽,$35/月

iON Cloud怎么样?iON Cloud升级了新加坡CN2 VPS的带宽和流量最低配的原先带宽5M现在升级为10M,流量也从原先的150G升级为250G。注意,流量也仅计算出站方向。iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠...

notifyall为你推荐
扫图问个非常白痴的问题撒,扫图是什么意思?12种颜色12种颜色的英语怎么写,用中文怎么读assemblyinfo求教如何修改AssemblyInfo.cs的版本号腾讯技术腾讯QQ是谁研发的?在那一年上市的?谷歌图片识别怎么通过一张GIF图在网上搜索出其出处(你们懂的...)以图搜图那个百度只找到了一模一样的..,有activitygroupactivityGroup子activity跳转的问题平安易贷app平安易贷app下载armv5te黑莓手机是什么操作系统竞争对手的主要优势竞争对手的主要劣势重启springboardiphone如何关闭没电提示声音
济南域名注册 广东vps 德国vps google电话 hostgator t楼 php主机 好看的桌面背景大图 好看的桌面背景图 河南服务器 云全民 京东商城0元抢购 我爱水煮鱼 免费吧 免费测手机号 中国电信宽带测速网 web服务器安全 四核服务器 腾讯云平台 建站技术 更多