1 个不稳定版本

0.1.0 2022年5月9日

#48#worker-thread


2 个 crate 使用

MIT 许可证

6KB
109

执行器

这是一个简单的执行器。有一个可以被许多工作线程共享的 Arc<Executor> 类型。

每个工作线程将连续运行 executor.poll_once(),这将

  1. 从共享任务队列中弹出一个任务
    • 如果没有任务,则挂起线程
  2. 轮询该任务

该任务将使用引用该任务的上下文(使用 Mutex<Option<Task>>)和执行器的副本进行轮询。

在此上下文中调用 wake 将会调用 executor.wake(task)。如果有线程正在休眠,其中一个将会被唤醒。

依赖关系

~1MB
~18K SLoC