繁体   English   中英

ThreadPool.QueueUserWorkItem与线程内的异步调用

[英]ThreadPool.QueueUserWorkItem with Async Call within the thread

我有一个MonoTouch应用程序,它使用ThreadPool来管理后台线程的数量。 如果我让ThreadPool从一个线程产生并在线程内,它会触发一个异步Web请求,Web请求会产生第二个线程吗? 如果是这样,该线程将从ThreadPool中删除吗?

这种事情的最佳做法是什么? Web请求是否应该是同步调用,以降低当前的线程数?

ThreadPool.QueueUserWorkItem(callback =>
{
    WebClient client = new WebClient();
    client.DownloadStringAsync(new Uri("http://www.google.com/"));
    client.DownloadStringCompleted += (a,b) => Console.WriteLine("Done");
});

如果您之后正在结束线程池回调,就像您在那里所显示的那样,那应该不会有问题。 你只是用另一个替换一个线程池调用时间线。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM