Как обрабатывать операции с базой данных, используя пул потоков и структуру сущностей? - PullRequest
3 голосов
/ 28 октября 2010

Мне действительно нужно несколько примеров кода здесь ... Что я пытаюсь сделать:

GetCollectionFromDatabase
foreach item
{
    resetEvents[i] = new ManualResetEvent(false);
    var makeRequest = new MakeRequest(resetEvents[i]);

    ThreadPool.QueueUserWorkItem(new WaitCallback(makeRequest.ThreadPoolCallback), i);
}
db.Save();

ThreadPoolCallback    
{
    update/delete the row 
}

Это правильный подход?Должен ли я передать в БД в качестве ссылки на ThreadPoolCallBack?

1 Ответ

1 голос
/ 28 октября 2010

Вам нужно будет создать контекст в обратном вызове пула потоков. Контексты Entity Framework не являются многопоточными и не могут совместно использоваться разными потоками.

Я так понимаю db - это контекст вашей базы данных в этом случае. Вам нужно будет создать новый файл в ThreadPoolCallback и сохранить его там.

...