ThreadPool.QueueUserWorkItem可以在主线程上执行吗?

时间:2012-02-09 21:57:04

标签: c# silverlight macos threadpool queueuserworkitem

我正试图在多线程应用程序中解决Mac上SL的奇怪问题。我的应用程序使用ThreadPool来排队各种不同的工作项。我的方法HandleRequest仅通过ThreadPool.QueueUserWorkItem(new WaitCallback(HandleRequest))调用。

应用程序运行速度非常慢,所以我从Windows远程调试并暂停它以找到一堆卡在Ha​​ndleRequest中的线程因为它们在有限的资源上等待。这很好,因为那里还有另一个问题,但我也注意到在主线程中有一个HandleRequest等待。怎么会发生这种情况?我以为ThreadPool在后台创建了工作线程并执行了它们的任务。

是否发生这种情况是因为ThreadPool已经耗尽了工作线程,因此使用调用线程来尝试执行回调方法?

0 个答案:

没有答案