liweilijie / rs-concurrency

concurrency by rust.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

concurrency

rust无畏并发.

工作原理

  • task,待处理的任务。任务可以被打断,并且把控制权交给 executor,等待之后的调度;
  • executor,一个调度器。维护等待运行的任务(ready queue),以及被阻塞的任务(wait queue);
  • reactor,维护事件队列。当事件来临时,通知 executor 唤醒某个任务等待运行。

executor 会调度执行待处理的任务,当任务无法继续进行却又没有完成时,它会挂起任务,并设置好合适的唤醒条件。 之后,如果 reactor 得到了满足条件的事件,它会唤醒之前挂起的任务,然后 executor 就有机会继续执行这个任务。 这样一直循环下去,直到任务执行完毕。

About

concurrency by rust.


Languages

Language:Rust 100.0%