我正在尝试用C#编写一个程序,它将连接到大约400台计算机并检索一些信息,比如说它将检索每台计算机上运行的Web服务列表。我假设我需要一个良好的线程化应用程序才能快速从这么多服务器中检索信息。我对如何开始处理此问题毫无头绪,请问你们能否给我一个起点!谢谢!
我认为在主逻辑中使用线程没有必要。使用异步API并将它们的回调安排到主线程中。这样,您可以获得异步性的好处,但不需要处理与线程相关的大部分困难。
只有当您需要处理的数据工作非常昂贵时,才需要在逻辑代码中使用多线程。即使在这种情况下,通常也可以通过并行化使用无副作用函数来完成。
userdata
对象,或者使用委托的this
作为userdata。 - CodesInChaos你还应该在多核 CPU 上并行执行线程以提高性能。
以下是我最喜欢的有关此主题的参考资料 -
http://www.albahari.com/threading/
http://www.codeproject.com/KB/Parallel_Programming/NET4ParallelIntro.aspx