!! 項目地址: https://github.com/EricDDK/coroutine
windows下是用fiber實現的,也就是win下的纖程
Linux下是ucontext實現的,代碼很簡單
協程的話,簡單點說就是在一根線程中實現多線程的效果,但是沒有線程的上下文切換的開銷,線程上下文開銷是由CPU操作的,協程是自己用代碼實現保存切換上下文的。
2個重要的函數
resume就是繼續執行當前協程,如果已經執行完了dead的協程就返回0
yield就是掛起當前協程,等待resume。
很簡單的邏輯...