进程、线程、协程
线程thread和进程process是操作系统层的概念,是操作系统以一定的策略分配cpu资源来模拟并行的。在单核cpu是概念上的并行,多核cpu可能有真正的并行。
进程有独立的栈和堆。
线程有独立的栈和共享的堆。
线程和进程都由操作系统调度。
协程与线程类似有独立的栈和共享的堆,但是是由程序员调度,可用来灵活控制代码执行。
单cpu时,协程可以避免无意义的线程调度来提高性能,但也失去了多cpu真并行的能力。
协程工作原理
遇到yield return xxx时将StartCoroutine的方法的剩余部分先挂起,去执行接下来的部分,挂起结束后在update和lateupdate之间继续执行。