进程线程两者对比:线程通讯相对简单,由于她们共享进程内的显存linux进程与线程通讯,一个反例是多个线程可以访问同一个共享变量线程更轻量,线程上下文切换成本通常要比进程上下文切换低并行与并发并发:
单核CPU下,线程实际还是串行执行的。操作系统中有一个组件称作任务调度器,将CPU的时间片分给不同的线程使用linux进程与线程通讯,只是因为CPU在线程间(时间片很短)的切换特别快,人类觉得是同时运行的。总结一句话就是:围观串行,宏观并行linux qq,
通常会将这些线程轮流使用CPU的做法称为并发,concurrent
CPU时间片1时间片2时间片3时间片4
core线程1线程2线程3线程4
并行:
多核CPU下,每位核(core)都可以调度运行线程红旗linux系统,这时侯线程可以使并行的。
CPU时间片1时间片2时间片3时间片4
core1线程1线程2线程3线程3
core2线程2线程4线程2线程4
引用RobPike的一段描述: