C# 4.0 异步任务结果
C# 4.0 async task results
我在 .net 4.5 上有一个程序,但我必须降级到 .net 4.0。
我的代码如下:
public static async Task<string> ServerReq(string key, string url, string[] post=null)
{
...
return await response;
}
private void newMethod()
{
var task = Task.Run(async () => await ServerReq(readText, "/ssh/index.php/api/auth"));
task.Wait();
if (task.IsCompleted)
{
string taskResults = task.Result;
}
}
我已经安装了 Microsoft BLC 组件以 async/await 工作。但是C#4中没有task.run方法。我尝试将其替换为 Task.Factory.StartNew 并且没有错误,但我无法得到任何结果。怎么了?如何将此代码移植到 4.0?提前致谢!
在 BLC 中,Run
方法在 TaskEx
class 而不是 Task
var task = TaskEx.Run(() => ServerReq(readText, "/ssh/index.php/api/auth"));
string taskResults = task.Result;
我在 .net 4.5 上有一个程序,但我必须降级到 .net 4.0。 我的代码如下:
public static async Task<string> ServerReq(string key, string url, string[] post=null)
{
...
return await response;
}
private void newMethod()
{
var task = Task.Run(async () => await ServerReq(readText, "/ssh/index.php/api/auth"));
task.Wait();
if (task.IsCompleted)
{
string taskResults = task.Result;
}
}
我已经安装了 Microsoft BLC 组件以 async/await 工作。但是C#4中没有task.run方法。我尝试将其替换为 Task.Factory.StartNew 并且没有错误,但我无法得到任何结果。怎么了?如何将此代码移植到 4.0?提前致谢!
在 BLC 中,Run
方法在 TaskEx
class 而不是 Task
var task = TaskEx.Run(() => ServerReq(readText, "/ssh/index.php/api/auth"));
string taskResults = task.Result;