V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zhangfeiwudi
V2EX  ›  问与答

多核 CPU 可以 并行 处理多线程 或者多进程吗?

  •  
  •   zhangfeiwudi · 2018-03-22 10:53:08 +08:00 · 5654 次点击
    这是一个创建于 2225 天前的主题,其中的信息可能已经有所发展或是发生改变。

    对这个问题有点困惑,比如说 我有个 4 cpu , java 一个进程我开了 4 个线程 同时处理数据库 4 个表的数据(打个比方) 他们是相互没有联系的,那么我特殊操作都不做 操作系统 会 并行 (而不是并发) 同时执行这 4 个线程吗 或者我开了 4 个进程同时处理数据.

    我的理解是,应该是会的,而不是出现以前网上那种很火的图 一个 cpu 在干活其他都在围观的情况

    其实 只要是处于并行状态 那么肯定就是并发状态

    第 1 条附言  ·  2018-03-22 11:37:05 +08:00
    多核的意思是 单个 cpu 多个核心
    4 条回复    2018-03-22 11:34:36 +08:00
    Len1133
        1
    Len1133  
       2018-03-22 11:13:35 +08:00
    我想你问的是 4 个空闲的 core,你一个进程开 4 个线程。。。。我也觉得会分给 4 个 core 并发,等大佬解答
    coderluan
        2
    coderluan  
       2018-03-22 11:30:30 +08:00
    为什么不自己试一下......
    f2f2f
        3
    f2f2f  
       2018-03-22 11:31:53 +08:00
    还得看程序本身调用逻辑,万一人家程序写死只调用一个线程,别的线程排队呢?很多游戏不都这样
    kokutou
        4
    kokutou  
       2018-03-22 11:34:36 +08:00
    要看实际逻辑吧。大部分都是能的。
    你要是 4 核的 cpu,然后你看到某个程序的进程最高只占用 25%的 cpu 的话,那这个程序就是单线程的没跑了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5974 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:17 · PVG 10:17 · LAX 19:17 · JFK 22:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.