1.由于.net4.0不具有队列多线程异步运行的方法,可以通过微软的扩展方法进行重写实现;
2.微软的方法
Task.Run<TResult> Method (Func<TResult>),地址:https://msdn.microsoft.com/en-us/library/hh194921(v=vs.110).aspx
3.具体的实现,通过重写方法进行实现:
public class AsyncHelper
{
/// <summary>
/// 多线程调用(解决并发压力)
/// </summary>
/// <param name="func"></param>
/// <returns></returns>
public static Task<JsonData> Run(Func<JsonData> func)
{
return Run<JsonData>(func);
}
public static Task<TResult> Run<TResult>(Func<TResult> func)
{
return Task.Factory.StartNew<TResult>(func);
}
}
{
/// <summary>
/// 多线程调用(解决并发压力)
/// </summary>
/// <param name="func"></param>
/// <returns></returns>
public static Task<JsonData> Run(Func<JsonData> func)
{
return Run<JsonData>(func);
}
public static Task<TResult> Run<TResult>(Func<TResult> func)
{
return Task.Factory.StartNew<TResult>(func);
}
}
4.通过引用改实体类,进行异步方法的调用
AsyncHelper.Run(()=>{
//具体的业务代码
return new JsonData{};
})
备注:版权所有,未经许可不可转载,如果有调不通的情况,可以与我留言;