如何在c#中将参数传递给异步任务

时间:2013-04-05 00:13:29

标签: c# asp.net multithreading

在ASP.NET Web请求期间,我需要启动异步任务,然后将控制权返回给网页。有人可以告诉我调用以下方法的代码吗?为了清楚起见,我希望函数async和web请求在函数处理时完成对控制页面的返回控制。

private void FunctionToCall(IInterface objectIWantToPassIn)
{
   // do stuff
}

2 个答案:

答案 0 :(得分:2)

您需要通过创建

来生成线程
Task task = Task.Factory.StartNew(action, "arg");

然后你可能想在任务完成时做点什么:

task.ContinueWith(anotheraction);

当然,在这种情况下,行动和剥夺将是无效的方法。

答案 1 :(得分:1)

 private void FunctionToCall(object state)
 {
        IInterface objectIWantToPassIn= (IInterface ) state;
        // do stuff
 }

  System.Threading.ThreadPool.QueueUserWorkItem(FunctionToCall, 
                                                objectIWantToPassIn);