线程为什么不安全及简单解决
发布日期:2024-04-25 21:48:11 浏览次数:1 分类:技术文章

本文共 324 字,大约阅读时间需要 1 分钟。

线程为什么不安全:我们在一定的硬件条件下,想去追求更高的效率,甚至极致的效率到达了一定的临界点,就可能会造成线程的不安全。

1,数据不可变

一切不可变的对象,一定是线程安全的(例如我们只是查询看一下,或者公用这个对象但是我们不改变这个对象)

2,互斥同步

只能一个线程使用,不能几个线程同时使用,搞成了一种抽象的串行化的执行。加锁

3,非阻塞同步

互斥同步带来的问题就是我们的线程如果有一个在用其他的就必须等待,然后没线程用了我们又要唤醒需要用数据的线程,真有用的时候我们其他的线程可以自旋

4,无同步方案

如果我们的线程都要去操作一个共同的数据,可以使用ThreadLocal等,我们创造一些副本让我们的线程去操作副本而不是直接去操作我们数据本身

转载地址:https://blog.csdn.net/liWei_Csdn0000/article/details/128580090 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:线程之概述
下一篇:线程中,start和run的区别,以及为什么不能调用两次start

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月06日 18时38分20秒