多线程并发导致的数据安全
引发数据安全问题的条件
1.多线程并发
2.有共享数据
3.数据有修改行为
解决线程安全的方法:需要线程排序执行(不能并发) 这种机制就是线程同步机制
关键字为synchronized 线程同步就会牺牲一部分效率。
线程同步:
异步编程模型:线程t1和线程t2,各执行各的,t1不管t2,t2不管t1。谁也不需要等谁,其实IU是多线程并发。
同步编程模型:线程t1和线程t2,在线程t1执行的时候,必须等待线程t2执行结束,或者在线程t2执行的时候,必须等待线程t1执行结束 ,两个线程发生了等待关系。这就是同步编程模型,在数据变安全的同时,牺牲了效率。