任务开始延迟
Task starts with delay
我按以下方式创建和启动任务:
Task task = new Task(() => controller.Play());
task.Start();
出于某种原因,有时任务会延迟 7-10 秒左右启动。
我并行使用 6 个任务,最大任务数为 32767,可用任务数为 32759
这是我在创建任务之前记录的内容,因此不可能达到最大任务数。我在任务应该执行的 controller.Play() 方法的第一行代码中写日志,所以没有锁或任何可以让任务等待的东西。
长 运行ning 任务,比如需要 10 秒的 100MB 反序列化,嗯,好吧,运行 as long-running tasks :-)
Long-运行ning 任务,根据当前的实现,总是 运行 在专用线程上,它们不会对线程池施加压力。
在你的情况下,你可能只有两个任务——反序列化和播放器。 TaskScheduler 的工作假设任务是短暂的,在这种情况下,它显然将 "player" 任务安排到 "deserializaion" 任务之后的 运行。
我按以下方式创建和启动任务:
Task task = new Task(() => controller.Play());
task.Start();
出于某种原因,有时任务会延迟 7-10 秒左右启动。 我并行使用 6 个任务,最大任务数为 32767,可用任务数为 32759 这是我在创建任务之前记录的内容,因此不可能达到最大任务数。我在任务应该执行的 controller.Play() 方法的第一行代码中写日志,所以没有锁或任何可以让任务等待的东西。
长 运行ning 任务,比如需要 10 秒的 100MB 反序列化,嗯,好吧,运行 as long-running tasks :-)
Long-运行ning 任务,根据当前的实现,总是 运行 在专用线程上,它们不会对线程池施加压力。
在你的情况下,你可能只有两个任务——反序列化和播放器。 TaskScheduler 的工作假设任务是短暂的,在这种情况下,它显然将 "player" 任务安排到 "deserializaion" 任务之后的 运行。