我想在將數據從數據庫寫入我們自己的對象時利用多線程。我們目前正在使用Firebird並使用「只讀」閱讀器FbDataReader檢索數據。C#針對Firebird(.NET)的多線程數據庫訪問
通過在FbDataReader舉行,填充對象記錄我們的週期,添加對象的列表,然後在應用程序中使用。所有這些都發生在我們應用程序的數據訪問層中。
理想情況下,我們想從數據庫中檢索數據(在FbDataReader),然後拆分寫線程之間的對象(每行一個)的工作。我看到的問題是FbDataReader只是向前的,不同的線程可能會導致讀者在另一個線程完成之前執行下一個記錄。
一個解決辦法可能是在FbDataReader轉儲到索引列表,數組或字典但這是有代價的。
沒有人有任何的想法,還是我們只是在浪費我們的時間尋找重構我們的這部分代碼?
我知道使用只向前遊標不可能比一次更快。這就是爲什麼我建議將所有數據分配給索引數組,列表或字典的中間步驟,這些數據可以在線程之間分開。 – Mysaffy 2010-11-06 01:11:10
對於引導修辭問題感到抱歉;他們並不打算侮辱。只是在訪問此主題時給其他人一些想法。你是對的,很明顯你明白了中介的需要。 – 2010-11-06 01:13:27
所以這個問題乞討。你將如何快速地將FbDataReader轉儲到列表,數組或字典中。似乎沒有辦法加快這個過程。感謝您迄今爲止的輸入,對此表示讚賞。 – Mysaffy 2010-11-06 01:33:08