1、線程安全:
指多個線程在執行同一段代碼的時候采用加鎖機制,使每次的執行結果和單線程執行的結果都是一樣的,不存在執行程式時出現意外結果。
2、線程不安全:
是指不提供加鎖機制保護,有可能出現多個線程先後更改資料造成所得到的資料是髒資料。
3、引起線程安全問題的原因:
線程安全問題都是由全局變量及靜态變量引起的。
若每個線程中對全局變量、靜态變量隻有讀操作,而無寫操作,一般來說,這個全局變量是線程安全的;若有多個線程同時執行寫操作,一般都需要考慮線程同步,否則的話就可能影響線程安全。
4、舉例說明:
假設售票系統有1000張票,A和B同時來買票,如果是線程不安全,那麼可能售票系統可能出現1000-1去同時執行的情況,最終結果是A和B都買完後剩下999張票,而不是998張。