原子的方式如何使我們的代碼線程安全?原子方式有哪些用途?
-2
A
回答
1
你可能想要在concurrency and locking in Java上讀一點。此外,請查看Java memory model/concurrency上的其他SO線程。
1
原子操作是根本無法中斷的操作。
典型的同步問題發生在一個線程更新不受同步機制保護的數據結構時,因此線程可以讀取過時或不一致的值,因爲值正在被其他線程從腳下改變。
避免此問題的機制是同步對數據結構的訪問,因此您需要下訂單並確保單個線程在其他線程訪問數據結構之前完成對數據結構的使用。
這些能夠工作的同步機制必須確保它們本身不能在CPU運行時從CPU調度出來,因爲如果發生這種情況,那麼線程可能會在不應該更新結構時更新結構。
這些機制是根據這些原子操作來實現的,以確保它們的工作。例如,semaphores依賴於具有原子增量和'測試和減量'運算符。
這是一個很大的主題,通常在主題「分佈式系統」下討論,這個術語可能會引導您獲得更好的資源來理解併發性。
相關問題
- 1. 原子GETSET操作有哪些用例?
- 2. MongoDB:分片方案中的次要用途有哪些?
- 3. 原子讀取的用途是什麼
- 4. 神經網絡圖層的輸出有哪些用途?
- 5. 附加屬性的各種用途有哪些?
- 6. lua中的表格不足 - 有哪些實際用途?
- 7. Linux啓動應用程序的方式和方法有哪些
- 8. array.prototype.slice.call中的原型有什麼用途
- 9. sql中的不同連接操作的用途有哪些在sql中使用不同的連接操作有哪些用途?sql
- 10. 以原子方式調用Web服務?
- 11. 解析HTML有哪些方法可用?
- 12. Keys Enum有哪些格式可用?
- 13. Java是調用原子方法原子
- 14. 你對jQuery的data()方法應用了哪些更實際的用途?
- 15. 開發Sharepoint應用程序的方式有哪些?
- 16. 從應用程序共享數據的方式有哪些?
- 17. 使用restoreCompletedTransactions還原哪些事務?
- 18. DB表格模式有哪些模式?
- 19. 發送反饋電子郵件表單有哪些可能的方式?
- 20. PDO有哪些所有獲取模式?
- 21. 訪客模式的用途與例子
- 22. 哪種方式去與這些錯誤
- 23. 從句子/查詢中提取位置的方法有哪些?
- 24. 使用接口的原因有哪些(Java EE或Spring和JPA)
- 25. Feed中有哪些類型的帖子?
- 26. 使用LINQ執行這些操作的方法有哪些?
- 27. 有哪些代碼庫可以翻錄適合商業用途的音頻CD?
- 28. 對於ExtJS應用程序,Sencha Cmd有哪些優缺點以及各種用途的替代方案?
- 29. 快捷方式突出顯示用途
- 30. gcc原子內建函數提供哪些異常保證?
你可能想澄清你的問題有點......「原子方式」不是非常具體或清晰。 – 2009-08-05 15:33:10
這是一個非常大的和難以理解的問題。什麼是「原子方式」?也許你的意思是原子方法?或同步方法? – 2009-08-05 18:51:12