Вызовите метод, когда поток ThreadPool завершит свою работу

Мне нужно запустить часть кода как отдельный поток на ThreadPool.

ThreadPool.QueueUserWorkItem(MyMethod,MyObjects);

Мне нужно запустить другой метод MyMethod2 после завершения MyMethod. Как я могу это сделать?

2 ответа

Вместо этого вы можете использовать параллельную библиотеку задач (TPL):

Task.Factory.StartNew(() =>
 {
 //your method call(s) here
 })
 .ContinueWith((task) =>
 {
 //your on completion code here
 });


Вот способ сделать это:

ThreadPool.QueueUserWorkItem(o => { MyMethod(o); MyOtherMethod(); }, MyObjects);

licensed under cc by-sa 3.0 with attribution.