我有一個程序將存儲來自某些服務器的一些網絡活動數據。爲了提高速度,我將設計應用程序在一個單獨的線程中創建每個請求,並將結果放入一個通用字典中,其中鍵是服務器ID,對象是結果類。多線程設計
但是,服務器的這種響應應該每10分鐘保存到數據庫。我不知道我是否有任何好主意如何解決這個問題。所以一些輸入會很好。
我想到的是鎖定結果字典並對結果進行深層克隆,並開始分析另一個線程中的結果,並將其放入數據庫中。
我怎樣才能最大限度地減少從request threads
阻塞,以便他們可以開始添加新的結果儘快,但仍然從字典中讀取?
只需將字典換成新字典即可。非常快,不要忘記鎖定。 – 2013-02-10 17:52:48