不變性immutablity設計 回覆
樓主,事實上我看了帖子後還是比較混亂,不明白immutablity是怎麼解決併發問題的,請樓主指教。
我看了帖子後大概理解是,值物件類似於棧上的值資料,只有自己的執行緒可以訪問和修改,不同執行緒擁有的實際上是不同的例項,那麼自然不存在爭用問題,是“執行緒安全的”,不知道我的理解對不對啊。 可是,這樣也失去了併發控制的意義。
前面那位同學也說了,先讀後寫還是需要序列化(姑且不說是用鎖控制還是佇列控制),那用不用不可變物件有什麼意義,究竟給併發效率提高帶來了什麼好處?
另一點不明白的是,值物件的值,比如lastedUpdateTime是從資料庫取的話,那麼一個會話更新這個值後,比如s1_A,那麼l_A必然要影響到其他會話(s2)的這個值(否則lastedUpdateTime便一直是舊資料),那麼必然會和s2_A衝突。
我看了帖子後大概理解是,值物件類似於棧上的值資料,只有自己的執行緒可以訪問和修改,不同執行緒擁有的實際上是不同的例項,那麼自然不存在爭用問題,是“執行緒安全的”,不知道我的理解對不對啊。 可是,這樣也失去了併發控制的意義。
前面那位同學也說了,先讀後寫還是需要序列化(姑且不說是用鎖控制還是佇列控制),那用不用不可變物件有什麼意義,究竟給併發效率提高帶來了什麼好處?
另一點不明白的是,值物件的值,比如lastedUpdateTime是從資料庫取的話,那麼一個會話更新這個值後,比如s1_A,那麼l_A必然要影響到其他會話(s2)的這個值(否則lastedUpdateTime便一直是舊資料),那麼必然會和s2_A衝突。
相關文章
- 使用Builder設計模式實現不變性 - DZone JavaUI設計模式Java
- 如何理解DDD中的不變性,不變數變數
- 程式設計靠天分?不!我學程式設計靠風變程式設計
- 資料庫設計——評論回覆功能資料庫
- 通過String的不變性案例分析Java變數的可變性Java變數
- QT程式設計之——使用全域性變數QT程式設計變數
- [圖說Java]字串的不變性Java字串
- 學習風變程式設計,學會的不僅僅是程式設計程式設計
- 學成才知道,風變程式設計誠不欺我!程式設計
- 為什麼程式設計師不遵循簡單性?程式設計師
- 前後端分離時代,Java 程式設計師的變與不變!後端Java程式設計師
- 神回覆:為什麼程式設計師怕改需求?程式設計師
- [譯]不變性之道 —— 組合軟體系列
- 線性時不變系統的卷積卷積
- Python - 物件導向程式設計 - 類變數、例項變數/類屬性、例項屬性Python物件程式設計變數
- .NET併發程式設計-資料結構不可變性程式設計資料結構
- 程式設計師如何實現財務自由?狼叔回覆程式設計師
- 女程式設計師的夢,眾網友的神回覆程式設計師
- 從驗證到不變性保護機制
- 收藏 不顯示刪除回覆顯示所有回覆顯示星級回覆顯示得分回覆 動態網站部署到伺服器出現了問題網站伺服器
- 學Guava發現:不可變特性與防禦性程式設計Guava程式設計
- 遊戲設計精粹:從爆款中汲取成功的不變法則遊戲設計
- 程式設計師面試神回覆,最後一個“過分”了!程式設計師面試
- 關於架構設計的易變性,應該如何理解呢?架構
- 選了風變程式設計,才發現Python並不難學程式設計Python
- 不會選工作沒關係,風變人生設計小白也能學!
- 程式設計師給測試人員的20條高頻回覆程式設計師
- 目標檢測精讀 | SNIP:解決“尺度不變性”
- 防禦性程式設計與瘋狂偏執性程式設計程式設計
- C++程式設計經驗-返回區域性變數的討論C++程式設計變數
- 【Openxml】顏色變化屬性計算XML
- 關於回覆資料後,登入不上的問題
- 企業微信快捷回覆如何設定呢?
- .Net中字串不變性與相等判斷的特殊場景字串
- App可靠性設計APP
- 設計不錯的網站網站
- 不會程式設計也是文盲?程式設計
- 全域性變數與區域性變數變數