这可能是一个奇怪的问题,它确实是为了我的教育目的,所以我可以将它应用于未来可能出现的场景中。如何确定Task.Run是否在一个循环内完成
我正在使用C#。
我是压力测试,所以这不是生产代码。
我通过Web服务将数据上传到我的服务器。
我使用Run.Task启动服务。
我在允许下一个Run.Task开始之前检查是否已完成任务。
这是在一个循环内完成的。
但是,因为我正在使用模块化的声明任务会不会影响结果? 我可以声明一个本地的Task.Run变量,但我想看看我能在第一个问题中得到多少。
如果Task.Run可以引发事件说它已完成,那么这可能不是问题?
这是我的代码:
//模块声明:
private static Task webTask = Task.Run(() => { System.Windows.Forms.Application.DoEvents(); });
//在通过定时器
if (webTask.IsCompleted)
{
//keep count of competed tasks
}
webTask = Task.Run(() =>
{
try
{
wcf.UploadMotionDynamicRaw(bytes); //my web service
}
catch (Exception ex)
{
//deal with error
}
);
使用[任务继续](http://msdn.microsoft.com/en-us/library/ee372288%28v=vs.110%29的.aspx)。有不同的修改。其中之一是*在任务完成后做些事*。国际海事组织你不需要计时器 - 改变你的代码到'webTask.ContinueWith ...'。 – pasty 2015-01-04 10:20:56
@pasty嗨,谢谢你的反应。我会看看这个,现在并报告 - 谢谢:) – 2015-01-04 10:23:24
@pasty所以,当我修改我的代码如下: – 2015-01-04 10:26:10