How to handle database operations using threadpool and entity framework?
I really need some code examples here... What I am trying to do:
GetCollectionFromDatabase
foreach item
{
resetEvents[i] = new ManualResetEvent(false);
var makeRequest = new MakeRequest(resetEvents[i]);
ThreadPool.QueueUserWorkItem(new WaitCallback(makeRequest.ThreadPoolCallback), i);
}
db.Save();
T开发者_如何学运维hreadPoolCallback
{
update/delete the row
}
Is this the right appoach? Do I pass in the db as a ref to the ThreadPoolCallBack
?
You will have to create a context within the thread pool callback. Entity framework contexts are not multi threaded and cannot be shared by different threads.
I take it db
is your database context in this case. You will have to create a new one in ThreadPoolCallback
and save it there.
精彩评论