淺談在.NET應用程序中進行Erlang風格的并行編程_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:ADO.NET實用經驗無保留曝光
      ADO.NET作為微軟最新的數據訪問技術,已經在企業開發中得到了廣泛的應用。對于一線的開發人員來說,掌握基本的概念和技術之后,提高應用水平和解決實際問題的最有效手段,莫過于相互交流彼此的最佳時間經驗經驗。在這篇文章中,兩位ADO.NET專家向讀者毫無保

      Erlang能夠用來編寫高度可伸縮的并行應用程序,其中經常會出現數以百萬計的輕量級組件,這種類似于線程的組件被稱之為actor。不幸的是,這往往需要您使用Erlang這種相對神秘的編程語言重寫所有代碼。不過我們也有其他選擇,例如使用名不見經傳的CCR平臺來進行開發,該平臺由.NET機器人部門開發。

      作為一種基于Actor的語言,Erlang通過Actor模型能夠實現高度并發性。在這個模型中,最基礎的并行單元不是線程或纖程(fiber) ,而是一種更為輕量級的東西。作為Erlang中的“進程”,每個并行單元在一個32位系統中只占用大約1200字節的基礎資源。與此相對的是,Windows操作系統中的每個線程默認會在棧上分配1MB空間,此外還需要額外的空間來作為簿記(Bookkeeping)和線程本地存儲。由于非常輕量,一個應用程序輕松支持百萬計的進程進行并發處理。

      在任一時刻,大部分的進程處于空閑狀態。當一個進程接受到了一條消息,運行平臺將為其分配一個線程來應答這條消息。一條應答可能會創建一個新的進程,向其他進程發送消息,或者改變自身狀態。一旦消息被處理之后,這個進程將會死亡,或者繼續等待下一條消息。

      消息處理系統實現了高端的并行性和高性能。每條消息都為異步發送,使得進程之間相互高度獨立。平臺能夠通過消息來得知應該喚醒哪個進程。由于每個進程都能被任意的線程來處理,因此就可以大大減少耗費相對昂貴的上下文切換操作。

      分享:asp.net/c#字符格式化
      一、用{0:?}格式化 可通過 String.Format 方法或通過 Console.Write 方法格式化數值結果,其中后一種方法調用 String.Format 。使用格式字符串指定格式。下表包含受支持的標準格式字符串。格式字符串采用的形式為 Axx ,其中 A 為格式說明符,而 xx 為精度說

      來源:模板無憂//所屬分類:.Net教程/更新時間:2009-06-21
      相關.Net教程