跨線程引發的崩潰:
1.正常跨線程調用
a.跨線程造成死鎖
b.跨線程釋放內存
c.多線程併發訪問(例如:進入一個界面時,該界面會同時發起三個異步請求操作。每個操作在發起數據請求時,都可能會調某一方法進行存取某一屬性值)
d.線程本身有問題,調用此線程也會掛掉。(執行本段邏輯均會掛掉)
e.線程調用後未sleep,一直佔用cpu,導致程序直接被殺死
f. 對公有變量的同時讀或寫。(當多個線程需要對公有變量進行寫操作時,後一個線程往往會修改掉前一個線程存放的數據,從而使前一個線程的參數被修改;另外,當公用變量的讀寫操作是非原子性時,在不同的機器上,中斷時間的不確定性,會導致數據在一個線程內的操作產生錯誤,從而產生莫名其妙的錯誤,而這種錯誤是程序員無法預知的)、
2.異常跨線程調用
同步鎖出現問題(在不應該解鎖的地方提前解鎖,導致其他線程訪問到此處的內容,引發了異常)