请教一下
如果我用Q6600这个四核的CPU,或者其他CPU
如果用JAVA写了个多线程的程序
是不是在执行的时候自动的会调用多核CPU,在多核CPU上进行不同线程的任务?

解决方案 »

  1.   

    四核的CPU 并不是多CPU 所以。
    多核同单核是一样的。
      

  2.   

    caoyinghui1986
    什么意思?
    如果没有意义,那四核的作用体现在哪里呢?
      

  3.   

    anqini
    那四核比较单核来说,用多线程执行程序
    执行的速度是比单核快4倍么?
      

  4.   

    CPU负责的是进程(process),多个进程(也就是多个程序)执行时,CPU负责为他们分配内存、配置权限等等
    进程包含一个或多个线程,进程负责协调各个线程,CPU不直接参与这种协调所以多核的好处体现在多任务(多个程序、多个进程)同时运行,而非一个程序,即使它包含多个线程具体请参看 多核与多线程技术的区别到底在哪里?
      

  5.   

    OS怎样调度线程,怎样分配CPU,CPU怎样优化指令流是底层的事情,你不需要考虑怎么调度的
    除了你一个Java程序里面的线程,windows里面有其他N个线程:或系统服务,或桌面,你任务管理器的进程就一大堆,他们都等着被调度呢。那四核比较单核来说,执行的速度是比单核快2倍就很不错了,多个处理器之间协同的开销远大于执行指令的开销
      

  6.   

    OS怎样调度线程,怎样分配CPU,CPU怎样优化指令流是底层的事情,你不需要考虑怎么调度的 
    =====================================================
    那我写一个JAVA程序,里面是多线程的
    那请问这个程序是在四核的一个核上执行,还是在四个核上同时执行呢?