当前位置:首页 » 编程语言 » java线程被中断

java线程被中断

发布时间: 2022-12-15 22:13:46

java线程哪些情况会中断

涉及到数据共享及数据的修改的情况下一般要考虑线程安全,比如有一个原始数据5,我在一个线程中要将这个数据加5,那么我就在这个线程中读取到这个数据然后加5得到10,然后再把10存入这个原始数据中,因为没有考虑线程安全,在我存入之前,有另一个线程修改了这个数据,把原始数据修改为0,然后之前的线程又才将10存入那个原始数据,那么此时这个原始数据就成为了10,然后因为之前有线程修改过,实际应该为5,这里只是数字,如果这个数字是钱呢?你的账户就会凭空多出钱来!还有很多种出错的情况,这里只是其中一种,所以在某些情况下必须要考虑线程安全性

② Java中如何中断线程

1: 给你的线程类一个标识符,然后在循环中对这个标志做判断,如果为false则跳出循环,自动结束线程(线程在run()里面执行完就自动关闭了),而你可以再线程外对这个标识符做控制。2: 对线程对象调用interrupt(),这样在run中使用sleep,wait等方法时自动抛出一个InterruptedException异常,在catch里面可以跳出循环。

③ Java线程中断机制是怎么回事

线程阻塞:一般通过下面方法实现
Sleep:睡眠 中间参数毫秒 自然醒 睡眠过程交出CPU控制权且一定不被执行 占有对象锁
Yield:终止 终止后交出CPU控制权 重新进入就绪状态,下一次有可能被再一次调用
Join:终止上一级线程 使当前线程运行完后再执行上一级线程
Wait:线程等待 必须放入synchronized块中 等待时,交出cpu控制权,释放对象锁,等待唤醒后重新拥有对象锁
Synchronized:加锁同步 逻辑错误下会导致死锁阻塞 一般有业务关联情况下的对象避免有锁中锁

热点内容
pythonifthenelse 发布:2025-09-18 20:33:19 浏览:906
热血传奇脚本怎么做 发布:2025-09-18 20:29:06 浏览:604
轩逸手动经典有哪些配置 发布:2025-09-18 20:20:40 浏览:620
安卓手机下载软件在哪里设置密码 发布:2025-09-18 20:10:08 浏览:603
net业务缓存框架 发布:2025-09-18 19:57:14 浏览:10
pythonrst 发布:2025-09-18 19:28:50 浏览:408
页面访问在线升级 发布:2025-09-18 19:13:46 浏览:777
相机存储满 发布:2025-09-18 19:12:19 浏览:758
如何搭载我的世界服务器 发布:2025-09-18 19:02:39 浏览:431
c语言组框 发布:2025-09-18 19:02:23 浏览:947