多线程超时熔断模型

本文探讨了Java中四种线程中断的方法:使用newThread.run()直接中断、利用Future的get方法捕获超时中断、通过守护线程定时中断以及采用定时器或线程池进行中断。深入分析了每种方法的实现原理及优缺点。

1

new Thread B {}.run();

b.join(t);

b.inturrupt();

 

2

future b

b.get(t);

catch timeout exception() {b.cancel()};

 

3

Thread daemon {sleep(t);    b.inturrupt();}

 

https://blog.youkuaiyun.com/wonking666/article/details/76552019

 

4

timer/schedule thread pool of jdk,HashedWheelTimer of netty

https://mp.weixin.qq.com/s?__biz=MzIwMzY1OTU1NQ==&mid=2247484184&idx=1&sn=3c40f97e72dc33a429d48e435d93babe&chksm=96cd4354a1baca42ba7797265e4789e05e9a956c415bd2f66aa03cd9db71f4b58b52ced830d9&mpshare=1&scene=1&srcid=0612pdqhfYrJ9vQFZMy7lb9l&key=5c6fdbbf5ef80a2a5e0870152be4d696d1a76ad537676570456a89c531de5d4a9dfb751da096fdd8e2ef9adeb513107ec446339b9eb35e1b9885bae1ca50dc115108dc9ecf50391db7a952f318fccdab&ascene=0&uin=MTA2NzUxMDAyNQ%3D%3D&devicetype=iMac+MacBookAir6%2C2+OSX+OSX+10.10.5+build(14F2511)&version=11020012&lang=zh_CN&pass_ticket=eq%2FlKAH01NxZfya9OskycmeYcwhMR7GeHGM%2FxbG1JivSJgjyuLjUggri5NDTSxPk

 

3 4方法本质是一样的,用另一个线程监视,t时间后执行inturrupt,缺点是线程较多,开销大

转载于:https://www.cnblogs.com/silyvin/p/9657310.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值