线程安全问题

什么是线程安全?

线程安全是多线程编程时的计算机程序代码中的一个概念。再此,我们得先知道什么是多线程:即就是一个程序中有多个线程在执行

线程安全问题大多是由全局变量及静态变量引起的,局部变量逃逸也可能导致线程安全问题。若每个线程中对全局变量、静态变量只有读操作,而无写操作,一般来说,这个全局变量是线程安全的;若有多个线程同时执行写操作,一般都需要考虑线程同步,否则的话就可能影响线程安全。

线程安全:在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同步机制或者在调用方进行任何其他操作,保证各个线程都可以正常且正确的执行,不会出现数据污染等意外情况。

多个程序访问一个对象时,如果不用考虑这些线程在运行环境下的调度和交替执行,也不需要进行额外的同步,调用这个对象的行为都可以获得正确的结果,那么这个对象就是安全的。(也就是说一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题)。

 

你可能感兴趣的:(操作系统)