2
如何在創建新的Task對象時重寫執行上下文?我想使用之前使用ExecutionContext.Capture捕獲的一個。在TPL中,我如何覆蓋執行上下文?
如何在創建新的Task對象時重寫執行上下文?我想使用之前使用ExecutionContext.Capture捕獲的一個。在TPL中,我如何覆蓋執行上下文?
和你不使用TPL時一樣:使用ExecutionContext.Run()
。例如:
Task.Factory.StartNew(
() => ExecutionContext.Run(
ec, _ => Console.WriteLine(CallContext.LogicalGetData("foo")), null))
和在這篇文章的同一天! http://blogs.msdn.com/b/pfxteam/archive/2012/06/15/executioncontext-vs-synchronizationcontext.aspx –
@JamesManning是的,我也注意到了。雖然我認爲這不是巧合。 – svick
我看到它,並意識到它可以解決我遇到的全局問題。 –