avo*_*avo 12 .net c# com multithreading async-await
我想使用await Task.Run(DoWork),在ThreadPool上做一些重复的单线程计算工作.问题是,我需要在里面使用STA COM对象DoWork,所以我想我不能使用ThreadPool因为我不能改变池线程的公寓状态.
我怎样才能在这种情况下使用async/ await?使用自定义任务调度程序创建自己的STA线程池听起来像是一项过度的工作.
Ste*_*ary 15
Stephen Toub 已经写过了StaTaskScheduler ; 我建议你使用它.
然后,您可以TaskFactory使用它构建一个TaskScheduler.没有相应Task.Run的TaskFactory类型,但你可以轻松创建一个使用StartNew和Unwrap.
| 归档时间: |
|
| 查看次数: |
2817 次 |
| 最近记录: |