全部 -其中C#多线程选项使用
更多的方法问题。我有一个Web服务,我需要从客户端机器进行性能测试。所以本质上我正在编写一个快速的WPF多线程应用程序(里面有一个量表/速度表)来直观地表示请求/响应时间。事件驱动 - 所以当我点击一个按钮 - 应用程序将开始提出请求。我只关心请求/响应花了多少时间,而不是现在的resposne值本身。
这是我目前思考的过程:
1)我需要创建尽可能多的线程,我可以(这我的客户机可以处理),并衡量性能。 2个选项我可以考虑 - 创建一个新的Thread机制(所以我可以完全控制该线程)或使用backgroundworker机制(这样我可以将该值从后台处理传递回UI)。假设 - 将不得不遍历线程创建代码 - 因此可以为这两种方法创建多个线程。
2)不需要任何进展报告,因此这不是标准用于选择多线程方式
3)是否需要一个回调方法 - 因为这应该传回的值(取为请求时间/响应web服务)
4)当我更新一个值的变量 - 将利用任何一种可用的同步方法。
5)没有真正使用4.0框架中的任务API - 但那是我应该考虑的。
上述方法看起来不错吗?或者我错过了什么吗?
真的很感谢任何帮助!
是的,是的,是再一次的任务!任务是惊人的,整个任务的任务只是一个简单的PLINQ循环,创建webrequests并等待响应。 – 2013-03-14 17:38:02
@BenjaminGruenbaum +1 PLINQ。我已经在几次使用它,这对于这类事情来说是非常容易和很棒的。 – 2013-03-14 17:40:27
完全同意@BenjaminGruenbaum – 2013-03-14 17:40:55