多线程安全问题
Posted zhinizhiwo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程安全问题相关的知识,希望对你有一定的参考价值。
------------恢复内容开始------------
一、线程中安全问题产生的原因。
1、多个线程在操作共享数据。
2、操作共享数据的线程代码有多条。
当一个线程在执行操作共享数据的多条代码过程中,其他线程参与了运算,就会导致线程安全问题的产生。
解决:
将多条操作共享数据的线程代码封装起来,当有线程在执行这些代码的时候,
其他线程则不可以参与运算,保证同一时刻只有一条线程访问。
必须要当前线程把这些代码都执行完毕后,其他线程才可以参与运算。
采用加锁机制synchronized(){
需要被同步的代码
}.
同步有个前提:
必须多个线程使用同一个锁
但是同步也有好处和弊端:
好处:解决了线程的安全问题;
弊端:相对降低了效率,因为同步外的线程都会判断同步锁
那个哪位大哥能给我说说线程同步机制是什么回事吗?在此谢过了,给各位大佬跪了~
spring事务执行问题能不能也给我说说呀~
------------恢复内容结束------------
以上是关于多线程安全问题的主要内容,如果未能解决你的问题,请参考以下文章