Lui*_*ipe 0 c# task-parallel-library
我创建了一个TaskScheduler,我将它作为两个不同任务的参数传递.
这样做有什么问题吗?我应该为每个任务创建一个新的TaskScheduler实例吗?
这是示例示例(为简单起见,每个任务中的实际代码都被删除)
var uiSch = System.Threading.Tasks.TaskScheduler.FromCurrentSynchronizationContext();
var t1 = Task.Factory.StartNew<List<Carrier>>(() =>
{
//does stuff
})
.ContinueWith(previous =>
{
//does stuff
},
System.Threading.CancellationToken.None,
TaskContinuationOptions.OnlyOnRanToCompletion,
uiSch);
var t2 = Task.Factory.StartNew<List<Logic.WarehouseLogic.Warehouse>>(() =>
{
//does stuff
})
.ContinueWith(previous =>
{
//does stuff
},
System.Threading.CancellationToken.None,
TaskContinuationOptions.OnlyOnRanToCompletion,
uiSch);
Run Code Online (Sandbox Code Playgroud)
[EDIT1]
我的问题部分与以下错误有关:'当前的SynchronizationContext可能不会被用作TaskScheduler'可在此处找到修复