void CreateFiber([NotNull] Process process) { var fiber = new Fiber(process.Run, this); Info($"Secondary fiber: {fiber.Id}, priority: {process.Priority}"); FibersMap.Add(process, fiber); Queues[process.Priority].Enqueue(process); }
public void Dispose() { if (disposed) { return; } Queues.ForEach(Kill); FinishedProcesses.ForEach(Kill); FibersMap.Clear(); disposed = true; }