進程鎖和線程鎖的作用?


線程鎖:

 多線程可以同時運行多個任務但是當多個線程同時訪問共享數據時,可能導致數據不同步,甚至錯誤!  so,不使用線程鎖, 可能導致錯誤

 

大家都不陌生,主要用來給方法、代碼塊加鎖。當某個方法或者代碼塊使用鎖時,那么在同一時刻至多僅有有一個線程在執行該段代碼。

當有多個線程訪問同一對象的加鎖方法/代碼塊時,同一時間只有一個線程在執行,其余線程必須要等待當前線程執行完之后才能執行該代碼段。但是,其余線程是可以訪問該對象中的非加鎖代碼塊的。

進程鎖:

也是為了控制同一操作系統中多個進程訪問一個共享資源,

只是因為程序的獨立性,各個進程是無法控制其他進程對資源的訪問的,

但是可以使用本地系統的信號量控制(操作系統基本知識)。

 

優點:保證資源同步 
缺點:有等待肯定會慢


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM