摘要:
多核處理,并行設計已經成為了計算機發展不可阻擋的趨勢之一。越來越多的技術人員開始關注多線程程序設計。但是選擇什么樣的環境來介入多線程程序設計往往是一個比較頭疼的問題。應該說,目前的許多環境并沒有為多線程建立良好的模型,例如C和C++。為此,人們試圖在這種環境中通過添加庫的方式為其加入多線程的功能。但是,這顯然是不合適的,實際上許多的時候,程序庫根本不能解決所有的問題,我們真正需要的是一種將多線程納入其規范體系之內的環境。 閱讀全文
多核處理,并行設計已經成為了計算機發展不可阻擋的趨勢之一。越來越多的技術人員開始關注多線程程序設計。但是選擇什么樣的環境來介入多線程程序設計往往是一個比較頭疼的問題。應該說,目前的許多環境并沒有為多線程建立良好的模型,例如C和C++。為此,人們試圖在這種環境中通過添加庫的方式為其加入多線程的功能。但是,這顯然是不合適的,實際上許多的時候,程序庫根本不能解決所有的問題,我們真正需要的是一種將多線程納入其規范體系之內的環境。 閱讀全文
posted @ 2008-07-28 15:59
TW-劉夏
閱讀(2362)
評論(8)
推薦(0)
摘要:
上一篇隨筆“"Loads are not reorderd with other loads" is a FACT!! 續:不要指望 volatile”中已經提到了。.NET的內存模型在volatile load上的實現是錯誤的。這在今天終于是半個官方的結論了。有關這個討論的結論可以參考“A bit more formalism as to why CLR's MM is broken on x86/x64 ”。關于內存模型(MM)的問題枯燥,縮略詞跟別的領域有過之無不及,為了便于說明趁著這個機會羅列一下。 閱讀全文
上一篇隨筆“"Loads are not reorderd with other loads" is a FACT!! 續:不要指望 volatile”中已經提到了。.NET的內存模型在volatile load上的實現是錯誤的。這在今天終于是半個官方的結論了。有關這個討論的結論可以參考“A bit more formalism as to why CLR's MM is broken on x86/x64 ”。關于內存模型(MM)的問題枯燥,縮略詞跟別的領域有過之無不及,為了便于說明趁著這個機會羅列一下。 閱讀全文
posted @ 2008-07-21 01:52
TW-劉夏
閱讀(1785)
評論(6)
推薦(0)
摘要:
上一篇隨筆中提到了volatile,實際上由于上一篇中提到的問題,volatile已經越來越遠離其應有的含義了。在說這個問題之前,我們又要提.NET的內存模型問題(以下簡稱MM),我不指望在這里長篇大論的說其內存模型是如何的。簡單的說就是以下的幾句話... 閱讀全文
上一篇隨筆中提到了volatile,實際上由于上一篇中提到的問題,volatile已經越來越遠離其應有的含義了。在說這個問題之前,我們又要提.NET的內存模型問題(以下簡稱MM),我不指望在這里長篇大論的說其內存模型是如何的。簡單的說就是以下的幾句話... 閱讀全文
posted @ 2008-07-19 19:55
TW-劉夏
閱讀(4763)
評論(3)
推薦(0)
摘要:
對于多線程編程的難度,再充分的心里準備也許都是不夠的。前一段時間一直在整理一些有關多線程編程的內容(一個對多線程算法庫編寫過程中的經驗積累)。而在前天,一篇來自于Microsoft 的PFX的Joe的博文驚現:"Loads cannot pass other loads" is a ~myth ,著實讓人驚出了一身冷汗。 閱讀全文
對于多線程編程的難度,再充分的心里準備也許都是不夠的。前一段時間一直在整理一些有關多線程編程的內容(一個對多線程算法庫編寫過程中的經驗積累)。而在前天,一篇來自于Microsoft 的PFX的Joe的博文驚現:"Loads cannot pass other loads" is a ~myth ,著實讓人驚出了一身冷汗。 閱讀全文
posted @ 2008-07-19 11:57
TW-劉夏
閱讀(2405)
評論(11)
推薦(1)
浙公網安備 33010602011771號