Xamarin iOS 和 Android 中的 ConcurrentExclusiveSchedulerPair 失败

ConcurrentExclusiveSchedulerPair in Xamarin iOS and Android fails

有谁知道在 Xamarin iOS 或 Android 项目中使用 ConcurrentExclusiveSchedulerPair 是否有什么特别之处?

目前我有:

private readonly ConcurrentExclusiveSchedulerPair _taskSchedulerPair= new ConcurrentExclusiveSchedulerPair();


public async Task InitializeAsync()
{
    await Task.Factory.StartNew(() =>
    {
        //This code never runs on iOS or Android :-(
        //Do work here
    },
        CancellationToken.None,
        TaskCreationOptions.None,
        _taskSchedulerPair.ExclusiveScheduler);
}

这一切在 Windows 机器上运行良好,但使用 ExclusiveScheduler 启动的新任务永远不会在 iOS 或 Android 上运行。

想法?

看起来是 not implemented yet

我确认它不起作用(所有任务根本就没有运行);此单元测试将失败:

[Test]
public void ExclusiveScheduler()
{
    var taskSchedulerPair = new ConcurrentExclusiveSchedulerPair (TaskScheduler.Default);
    var mre = new ManualResetEvent (true);
    var task = Task.Factory.StartNew (() => mre.Set (), CancellationToken.None, TaskCreationOptions.None, taskSchedulerPair.ExclusiveScheduler);
    var result = mre.WaitOne (1000);
    Assert.IsTrue (result);
    Assert.AreEqual (TaskStatus.RanToCompletion, task.Status);
}