Question

How do I override the execution context when creating a new Task object? I want to use one that I previously captured using ExecutionContext.Capture.

Was it helpful?

Solution

The same as you would when not using TPL: using ExecutionContext.Run(). For example:

Task.Factory.StartNew(
    () => ExecutionContext.Run(
        ec, _ => Console.WriteLine(CallContext.LogicalGetData("foo")), null))
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top