翻了翻,感受标准库支持的并发应该是kernel level 的(书里也没有明确写,不过他写了诸如“操做系统来安排”“须要知道硬件支持多少线程”等等话语,因此猜想是kernel的。kernel level就是操做系统知道代码定义了几个线程而且知道硬件支持多少线程,能够的话就会安排上去,不会像user level定义的线程全靠用户本身定义的task switch,操做系统只认为这是一个单线程的进程,只安排给它一个处理单元(应该是一个 processor)。c++
另外从做者在书里写的c++是语言里最底层的,不须要一门更底层的语言这话来看。。。也应该支持kernel level的并发。。。。并发
这里涉及两个问题,一个是c11标准库支持的并发是user level仍是kernel level,以及两者的定义。spa
但愿我两个问题都没有理解错。操作系统
ps: 这个中英文对照也颇有意思,大概是 CPU---中央处理器 processor-----处理器 core(processing unit/core)----核心 若是是一个 4 dual-core processor的处理器,我以为中文翻译应该是4核8线程的处理器,此核非彼核,有意思。
线程
在我理解里就是,processor运行一个进程,core处理一个线程(固然科学一点讲,涉及不少知识。。懒得去复习。。)。那有一个问题就是,若是一个单线程的进程被一个双线程(1 dual-core processor)的处理器运行着,那是否是这个处理器的另外一个线程就浪费了。。。由于别的进程的线程讲道理不能被安排进来。又或者难道一个core就能够单独运行一个进程????翻译