淺談在.NET應用程序中進行Erlang風格的并行編程_.Net教程
推薦:ADO.NET實用經(jīng)驗無保留曝光ADO.NET作為微軟最新的數(shù)據(jù)訪問技術,已經(jīng)在企業(yè)開發(fā)中得到了廣泛的應用。對于一線的開發(fā)人員來說,掌握基本的概念和技術之后,提高應用水平和解決實際問題的最有效手段,莫過于相互交流彼此的最佳時間經(jīng)驗經(jīng)驗。在這篇文章中,兩位ADO.NET專家向讀者毫無保
Erlang能夠用來編寫高度可伸縮的并行應用程序,其中經(jīng)常會出現(xiàn)數(shù)以百萬計的輕量級組件,這種類似于線程的組件被稱之為actor。不幸的是,這往往需要您使用Erlang這種相對神秘的編程語言重寫所有代碼。不過我們也有其他選擇,例如使用名不見經(jīng)傳的CCR平臺來進行開發(fā),該平臺由.NET機器人部門開發(fā)。
作為一種基于Actor的語言,Erlang通過Actor模型能夠?qū)崿F(xiàn)高度并發(fā)性。在這個模型中,最基礎的并行單元不是線程或纖程(fiber) ,而是一種更為輕量級的東西。作為Erlang中的“進程”,每個并行單元在一個32位系統(tǒng)中只占用大約1200字節(jié)的基礎資源。與此相對的是,Windows操作系統(tǒng)中的每個線程默認會在棧上分配1MB空間,此外還需要額外的空間來作為簿記(Bookkeeping)和線程本地存儲。由于非常輕量,一個應用程序輕松支持百萬計的進程進行并發(fā)處理。
在任一時刻,大部分的進程處于空閑狀態(tài)。當一個進程接受到了一條消息,運行平臺將為其分配一個線程來應答這條消息。一條應答可能會創(chuàng)建一個新的進程,向其他進程發(fā)送消息,或者改變自身狀態(tài)。一旦消息被處理之后,這個進程將會死亡,或者繼續(xù)等待下一條消息。
消息處理系統(tǒng)實現(xiàn)了高端的并行性和高性能。每條消息都為異步發(fā)送,使得進程之間相互高度獨立。平臺能夠通過消息來得知應該喚醒哪個進程。由于每個進程都能被任意的線程來處理,因此就可以大大減少耗費相對昂貴的上下文切換操作。
分享:asp.net/c#字符格式化一、用{0:?}格式化 可通過 String.Format 方法或通過 Console.Write 方法格式化數(shù)值結果,其中后一種方法調(diào)用 String.Format 。使用格式字符串指定格式。下表包含受支持的標準格式字符串。格式字符串采用的形式為 Axx ,其中 A 為格式說明符,而 xx 為精度說
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-淺談在.NET應用程序中進行Erlang風格的并行編程
。