活動對象的設計模式,因爲我明白的是佔用一個(私人/專用)螺紋壽命時間的對象並使其上獨立的數據工作。從一些我閱讀文檔的,這種模式的演變是因爲兩個原因,第一,管理原紗將是痛苦和第二多個線程競爭共享資源使用互斥和鎖不能很好地擴展。雖然我同意第一個理由,但我並不完全理解第二個理由。製造物體的活性只是使獨立的對象,而是像爭用鎖定/互斥的問題仍然存在(因爲我們仍然有共同的隊列/緩衝液),該對象正好委派共享責任到消息隊列。這種設計模式,因爲我看到的唯一優點是,我必須現在共享對象(上執行長非同步任務的情況下我只是消息傳遞到共享隊列,螺紋不再具有阻斷長上互斥/鎖,但他們仍然會阻止和爭奪發佈消息/任務)。除了這種情況之外,有人可以告訴更多的情況,這種設計模式會有其他優勢。要使用Active對象嗎?
第二個問題我是(我剛開始圍繞設計模式挖掘),是什麼之間,活動對象,反應器和攝器設計圖案的概念上的差異。你如何決定哪種設計模式更高效,並且更適合你的需求。如果某人能夠演示某些例子,顯示三種設計模式如何表現以及哪一種模式在不同情景下具有比較優勢/劣勢,那將非常好。我有一種困惑,因爲我已經使用活動對象(它使用共享線程安全緩衝區)和boost :: asio(Proactor)都做類似的異步的東西,我想知道如果任何人有在解決問題時更多地瞭解不同模式的適用性。