0

我有一個應用程序運行多個併發後臺進程以使用企業庫的數據訪問應用程序塊將數據插入到數據庫中。 每個後臺線程使用傳遞相同數據庫實例名稱的DatabaseFactory.CreateDatabase。以下是代碼檢索數據庫,並命令對象的片段:如何確保使用企業庫的數據訪問時的線程安全

Microsoft.Practices.EnterpriseLibrary.Data.Database database = DatabaseFactory.CreateDatabase(this.DatabaseInstanceName); 
DbCommand commandObj = database.GetSqlStringCommand(statement); 

我發現這不是線程安全的,我得到因數值得到跨線程混淆的錯誤。我應該如何處理這個以確保它是線程安全的?

在此先感謝!

回答

1

我發現我的問題。跨線程混合的值不是由於企業庫數據訪問對象,而是我用來存儲參數的另一個對象。我在每個線程中意外地將其設置爲全局而不是本地資源。

相關問題