抱歉,这是一个愚蠢的问题,但是可以创建一组后台工作人员吗?
我正在使用这篇文章中的示例: how-to-use-wpf-background-worker
我正在处理文档,并希望将每个文档放在自己的线程中。还是应该为每个文档使用相同的后台工作对象?
感谢您的任何见解。
抱歉,这是一个愚蠢的问题,但是可以创建一组后台工作人员吗?
我正在使用这篇文章中的示例: how-to-use-wpf-background-worker
我正在处理文档,并希望将每个文档放在自己的线程中。还是应该为每个文档使用相同的后台工作对象?
感谢您的任何见解。
你可以这样做,但我觉得这是非常不可取的。每当您需要多个BackgroundWorker
线程时,您都应该开始考虑使用其他形式的线程。
有关替代方法,请查看 MSDN 上的Task
Class and Asynchronous Programming with Async and Await(C# 和 Visual Basic)页面。
您可以创建一个
List<BackgroundWorker> lstMyWorkers = new List<BackgroundWorker>();
列表数组没问题。但请注意。这些线程没有必要让事情变得更快。
运行过多的线程最终会比单个线程上的内联代码版本慢得多。
最佳点是 6 到 10 个同时线程。10 个线程是因为您一次绝对需要这么多线程,这非常罕见。我在模拟软件上使用它,但除了那些我真的没有看到超过 2-3 的使用。
我不知道好的文档或指南网页可以做和不做,但可能另一个堆垛机伙伴可能会为您提供一个不错的链接。