当我创建一个任务,如何在C#中获取TPL任务线程的引用?
Task task = Task.Factory.StartNew(() => someMethod(args));
在C#4.0 +
,我怎么能得到这个任务的线程(S)的参考?
是否有可能在创建任务的同一个线程中执行该任务或产生多个线程?
更新:
的原因是:
- 我想,以确定任务的线程调试器(和它的属性的名称)等
创建任务执行总是与创建任务的线程分离?
它是一个,零个还是多个线程?
它在同一个核心上执行吗?
知道,因为,例如,我可以把睡在主线程的思想,我冻结了后台工作是很重要的
更新:
有用的答案:
你不应该需要做的风险。你想解决什么问题? – SLaks 2013-03-11 14:07:36
据我所知,你不能那样做。不能保证任务会产生一个新的线程,它可以运行在它创建的同一个线程上。此外,任务(可能)可以在多个线程之间分割。但是我在这里和@SLaks在一起,关于这种方法有些问题。 – 2013-03-11 14:08:32
答案:(1)肯定,但为什么,(2)是,(3)是。 – user7116 2013-03-11 14:08:45