系统和多个线程的关系:
一个系统内可以创建多个进程,
一个进程可以类比为一个应用程序,
一个进程内可以创建多个线程,
协程是Go语言首创,通过在一个线程内代理当前线程的所有系统的调度权,模拟出多个子线程——称作协程,以达到优化效率的目的。
线程和协程的关系:
协程 Coroutine的精髓就是在一个进程一个线程内的协作。
和多线程对比:
-
多线程是在发送指令到操作系统去调度, 由系统控制执行的顺序;
-
协程也是需要调用系统的多线程能力(一些基础接口),但是把更多的控制权限接管到一个中央线程里,由自己的中央线程去作调度,达到实现提升效率的目的。