有沒有一種方法,而不是鎖定一個對象,顯示它的臨時副本,而不是一個訪問它的人?有一個對象的副本而不是一個鎖定的對象
0
A
回答
2
使用TransactionScope將您的情況下使用該對象的代碼封裝爲關鍵資源,並將IsolationLevel設置爲快照。
這樣,任何試圖訪問相同對象的人都應該在編輯對象之前看到該值,直到事務完成。
0
如果您使用volatile修飾符,則可以避免臨時副本。
即使先前的指令要求來自同一對象的值,系統始終會在請求的位置讀取易失性對象的當前值。此外,該對象的值立即寫入賦值。 volatile修飾符通常用於多線程訪問的字段,而不使用lock語句來序列化訪問。使用volatile修飾符可確保一個線程檢索另一個線程寫入的最新值。
相關問題
- 1. 我只能返回一個狀態對象,而不是整個狀態對象的一部分的新副本
- 2. 製作另一個對象內的對象的副本。 JAVASCRIPT
- 3. 修改一個對象與修改該對象的副本
- 4. 同步對象在一個線程鎖定,而在另一個
- 5. 這個對象怎麼可能是一個對象而不是對象?
- 6. 對象池似乎要返回一個對象副本而不是對象引用
- 7. 只返回一個對象JSON而不是多個對象PHP?
- 8. 需要一個ArrayList副本的對象的副本
- 9. C++指向一個類的對象,而不是對象
- 10. 如何傳遞一個對象而不是一個對象的細節?
- 11. 是否同步鎖定一個Reentrantlock,或只有它的對象?
- 12. 只有一個鎖定對象的'死鎖'?
- 13. 從給定一個對象的對象
- 14. 鎖定指向一個對象
- 15. INotifyPropertyChanged當綁定到對象本身,而不是一個屬性
- 16. JavaScript對象定義返回一個字符串,而不是整個對象
- 17. 如何製作一個沒有參考的對象的副本?
- 18. 擁有另一個對象的對象
- 19. 打印的對象是一個數組,它是一個對象
- 20. RestKit 0.2返回一個對象數組而不是一個對象
- 21. 解析一個JSON對象值(一個數組),而不是對象
- 22. ListView替換第一個對象而不是添加一個新對象
- 23. navigator.mediaDevices.getUserMedia'undefined'不是一個對象
- 24. null不是一個對象
- 25. AngularJS:AJAX返回是一個字符串,而不是一個對象
- 26. 在一個或另一個集合中有對象,但不是兩個對象?
- 27. 傳遞一個抽象類而不是java中的對象?
- 28. 創建一個對象的地圖而不破壞對象
- 29. 是否只有一個事件處理程序的所有對象的副本
- 30. 我可以保持一個對象的副本,該對象內的其創建
不是在那個內在的層面_I think_你在問。我理解你的需要,並相信現代功能語言(也許Clojure)可能會提供這種現代和其他內存消費方法在一個非常內在的層面。我建議你自己寫一個不可變對象的星座,併爲它們製作各種各樣的變化構造函數,可能就是這樣。但是你必須寫下它們。 .NET不提供這種願望的開箱即用解決方案... – 2013-03-01 14:34:02