[問卦] 淺談CCR消失

看板Gossiping作者時間9年前 (2016/08/29 21:00), 編輯推噓-8(2106)
留言18則, 18人參與, 最新討論串1/1
CCR 簡介 Concurrency and Coordination Runtime (CCR) 是 Managed 程式碼庫,屬於動態 連結程式庫 (DLL),可以從任何以 .NET Common Language Runtime (CLR) 為目標的語言 存取。 CCR 可以滿足服務導向應用程式的需求,管理非同步作業、應付並行處理、利用平行 硬體,並處理部分失敗。它讓使用者能夠設定應用程式,以便讓軟體模組或元件鬆散結 合,也就是說,模組和元件可以獨立開發,然後建立有關其執行階段環境及其他元件的 最低假設。這種手法改變使用者思考程式的方式,從開始設計程序到應付並行處理、失 敗和隔離,都以一致的方式進行。 問題領域 ‧ 非同步 - 在鬆散結合的軟體元件之間進行通訊時,例如程式跨整個網路執行, ‧ ‧ 或使用者介面 (UI) 程式碼與使用者輸入和檔案 I/O 子系統之間通訊,非同步作業可 以讓程式碼縮放更好、更有回應,而且能跨多項作業應付失敗。但是, ‧ ‧ 非同步程式設計在相當程度上減低了使用者程式碼的可讀性,因為邏輯經常在回呼與 引發作業的程式碼之間分割開來。此外,跨多項未完成的作業正確處理 ‧ ‧ 失敗,幾乎是不可能的任務。 ‧ 並行處理 - 需要更妥善利用多項執行資源的程式碼,必須分割成獨立的邏輯區 ‧ ‧ 段,以便平行執行,並在必要時進行通訊,以便從組合的執行產生結果。邏輯 ‧ ‧ 區段經常是由執行緒 OS 基本項目擷取,這是長時間執行的反覆運算。由於執行緒效 能影響執行緒啟動,執行緒會長期處於作用中。因而不得不採取特定模 ‧ ‧ 式。程式碼是建構為長序列,使用封鎖或同步呼叫,一次只處理一件事。此外, ‧ ‧ 執行緒認定之間的主要通訊是共用的記憶體,迫使程式設計人員使用非常明確 ‧ ‧ 而容易出錯的方法,同步處理該共用記憶體的存取。 ‧ 協調與失敗處理 - 元件之間的協調是大型軟體程式最複雜的部分。互動模式不相符, 例如物件上的呼叫方法與使用 OS 信號基本變數與使用佇列加上信號,會導致程式碼無法 讀取,在其中執行階段會因協調作法不同而大幅改變行為表現。更重要的是,錯誤處理手 法都沒有完善定義,而且一樣也是差異極大。 應用程式模型 CCR 很適合用於將元件分割成片段而只透過訊息互動的應用程式模型。這種模型中的元件 需要有方法在訊息之間進行協調、應付複雜的失敗情況,並有效處理非同步程式設計。這 種應用程式模型也很類似異質性硬體整合的方式,以及網路應用程式建置的方式。大部分 軟體程式都有相同的需求,從傳統用戶端 PC 程式到伺服器應用程式,到在網頁瀏覽器執 行的小程式都一樣。軟體需要協調使用者輸入、儲存輸入/輸出和 UI 呈現。雖然以多層 大部分是同步處理應用程式程式碼介面來掩藏,非同步是無可避免的,因為裝置是以不同 的速度運作,可用的資源有極大差異,而我們一般都知道如何使用佇列來進行隔離。 以下各節簡介 CCR 程式設計模型及其實作,以有效、穩定而可擴充的方式,解決上述各 方面問題。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.204.124.170 ※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1472475616.A.BED.html

08/29 21:00, , 1F
賺p幣真的不必這樣
08/29 21:00, 1F

08/29 21:00, , 2F
08/29 21:00, 2F

08/29 21:01, , 3F
干我屁事
08/29 21:01, 3F

08/29 21:01, , 4F
你的程式很浪漫
08/29 21:01, 4F

08/29 21:01, , 5F
?
08/29 21:01, 5F

08/29 21:01, , 6F
ㄟ('v')o 太過分惹
08/29 21:01, 6F

08/29 21:01, , 7F
這篇會被刪
08/29 21:01, 7F

08/29 21:01, , 8F
ㄈㄈ尺
08/29 21:01, 8F

08/29 21:01, , 9F
談3學
08/29 21:01, 9F

08/29 21:01, , 10F
好有創意喔喔喔喔
08/29 21:01, 10F

08/29 21:02, , 11F
你是要問還是要討論 搞的我好亂
08/29 21:02, 11F

08/29 21:02, , 12F
引戰
08/29 21:02, 12F

08/29 21:05, , 13F
08/29 21:05, 13F

08/29 21:08, , 14F
你都講完了還問什麼卦????
08/29 21:08, 14F

08/29 21:22, , 15F
有創意喔
08/29 21:22, 15F

08/29 21:29, , 16F
我還以為是Koenigsegg CCR
08/29 21:29, 16F

08/29 21:35, , 17F
所以CCR不一定都是不好的哦
08/29 21:35, 17F

08/29 21:46, , 18F
卦在哪?
08/29 21:46, 18F
文章代碼(AID): #1Nn37Wlj (Gossiping)