thread-意識和thread-安全有什麼區別?線程感知和線程安全有什麼區別?
7
A
回答
6
禮貌http://sreekalyan.blogspot.com/2007/01/thread-safe-and-thread-aware.html
主題意識到 在任何給定的時間,最多隻有一個線程可以在對象上的活動。該對象知道其周圍的線程,並通過將所有線程放入隊列來保護自己免受線程攻擊。由於在任何給定時間在對象上只能有一個活動的線程,對象將始終保持其狀態。不會有任何同步問題。
線程安全: 在給定的時間,多個線程可以在對象上活躍。對象知道如何處理它們。它已正確同步對共享資源的訪問。它可以在這個多線程環境中保存其狀態數據(即它不會陷入中間和/或不確定狀態)。在多線程環境中使用此對象是安全的。
使用既不是線程感知也不是線程安全的對象可能會導致獲取不正確的和隨機的數據以及神祕的異常(由於嘗試訪問線程正在使用的對象並且處於不穩定狀態時,在訪問第二線程的瞬間處於中間狀態)。
1
我相信一個自己的互斥鎖定序列化函數是線程安全的,但可能不是線程感知的。
相關問題
- 1. 叉子和線程有什麼區別?
- 2. 手柄和線程有什麼區別?
- 3. openMP和線程池有什麼區別?
- 4. CLR Worker線程和Worker線程有什麼區別?
- 5. 使用線程池和普通線程有什麼區別?
- 6. 內核線程和用戶線程有什麼區別?
- 7. 工作線程和I/O線程有什麼區別?
- 8. windows線程池和CLR線程池有什麼區別
- 9. UI線程和渲染線程有什麼區別?
- 10. 時間多線程和超線程之間有什麼區別?
- 11. 單線程線程安全級別
- 12. 線程轉儲有什麼區別
- 13. Java 7 API文檔中的「併發」和「線程安全」有什麼區別?
- 14. 線程和處理程序有什麼區別
- 15. 在後臺進程中分配和線程有什麼區別?
- 16. 線程關聯和進程關聯有什麼區別?
- 17. 用戶級線程和協程之間有什麼區別?
- 18. 線程堆棧和進程堆棧有什麼區別
- 19. java線程安全:線程安全嗎?
- 20. 塊中的一個線程和一個warp(32個線程)有什麼區別?
- 21. msdn:什麼是「線程安全」?
- 22. 線程安全是什麼意思?
- 23. 爲什麼這個線程安全?
- 24. 什麼是線程安全的ByteArrayOutputStream?
- 25. 線程安全是什麼意思?
- 26. 什麼時候線程安全問題?
- 27. 什麼是線程安全的對象
- 28. 線程安全
- 29. 線程安全
- 30. 線程安全