🧬PHP的yield到协程直观的理解

This commit is contained in:
zyimm 2023-11-01 17:53:05 +08:00
parent e29ba3d7ac
commit 97edbb8249

View File

@ -86,7 +86,7 @@ var_dump($gen->valid()); //返回false 因为上一步所有yield已经全部执
2. 切换到烧开水这个一步进行5s 暂停回到1
3. 上述1和2两个任务不停来回切换直到任务完成计算内部切换很快所以开起来两个任务在并发执行
按照这样逻辑回到计算机层面上面,协程的并发执行,非抢占式调度,状态保存和恢复是否更好的理解。同样也能解释在协程里面不能出现阻塞进程操作,否则协程退化成传统同步阻塞一样。
所以协程方式总计任务耗时应该是小于6min。按照这样逻辑回到计算机层面上面,协程的并发执行,非抢占式调度,状态保存和恢复是否更好的理解。同样也能解释在协程里面不能出现阻塞进程操作,否则协程退化成传统同步阻塞一样。
再者现在cpu大多是多核意味着同一个时刻可以处理多个任务那么协程的优势更加明显