Java理解之线性安全与线性不安全

java理解之线性安全

在java中存在这样一个概念:线性安全。说到线性安全必然也会涉及到集合对象,对于集合对象中,存在两种类型,即为线性安全及线性不安全。

对于理解线性安全,就必须提前了解一个概念:

线性同步:当一个程序对语句(或线性安全的方法)进行访问过程中,其他的将不能对其进行其他相关的操作,必须要等到本次访问结束之后才能对这个语句(或线性安全的方法)进行访问。

那下面我就来引入线性安全这一个概念:

线性安全
如果现在代码中有多个线程同时运行,而这些线程可能在同一个时刻运行这段代码,那么如果运行结果个单线程运行的结果是一致的,而且其他的变量值跟预期是一模一样的。那么我们就称之为线性安全。

注意:线性安全问题都是由全局变量及静态变量引起的。
其次,在实际的运行过程中,若每个线程中对全局变量,静态变量只有读操作,并无写操作,一般而言,这个全局变量是线程安全的;
若有多个线程同时执行写操作,一般需要考虑到线程同步的问题,否则就可能影响到线程的安全问题。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章