【发布时间】:2011-04-04 23:48:01
【问题描述】:
我在下面放置了一些非常基本的代码来说明我正在尝试做的事情。我有执行异步操作的“DoSomethingAshnc”方法。我希望 'DoSomething' 方法是一个同步方法,它不接受 action 参数并返回一个 int。
public void DoSomething(Action<int> actionToPerformOnComplete)
{
DoSomethingAsync(delegate(int val)
{
actionToPerformOnComplete(val);
});
}
是否甚至可以让“DoSomething”返回一个整数,就好像该方法是同步发生的一样?
【问题讨论】:
-
你可以将它包装在一个线程中并阻塞,直到你得到响应......
-
这就是为什么我们兴奋地等待C#5.0 async / await(或已经使用异步 CTP)。
标签: c# asynchronous delegates