我想做这样的事情:
public async Task<int> DoWork(int parameter) { try { await OperationThatMayCompleteSynchronously(parameter); } catch(Exception) e { if(completedSynchronously) doSyncThing(); else doAsyncThing(); } }
注意:我正在线程池上运行任务,因此没有异步上下文.
我希望能够分辨出立即抛出的异常和我仍然在调用线程上的区别(例如参数无效导致函数中止),并且当异步任务完成时抛出异常,并且我我在一些其他随机回调线程(例如网络故障)
如果我没有使用await,我可以解决如何实现这一点,并且在异步操作中使用了ContinueWith,但是可以使用await吗?
@H_301_10@