怎样理解cpu,进程,线程,实例之间关系?

小木
  • 295

pm2部署node应用充分利用多核开启多进程,这里的每个进程是不是实例.

单核也能开启多进程,pm2在单核cpu上也能开启多进程(之前测试过),单核下开启多进程和多核下开启多进程有什么不同?

对应cpu密集任务应该开进程来计算还是线程?

回复
阅读 1.4k
1 个回答
  1. 是实例,每个进程的数据都是相互独立的;
  2. 在软件层面上没什么不同,只不过在一个单核上开启多个进程应该没什么意义,反正CPU指令都要排队执行的。
  3. 线程这个概念已经出现得越来越少了,大家逐渐认识到在一个进程中开启多线程会导致很多额外的调度成本、锁、脏数据等问题,未必比单一线程效率更高。现代框架中双向同步用得越来越少,也是同样的道理。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏