我看到有的程序有很多线程!但有一个优先级是最高!还有就是高,然后还有低!请问这个程序先运行哪个线程 啊?是把这个程序的所以线程都运行了!还是只是运行最高的那个线程啊?谢谢!

解决方案 »

  1.   

    线程的优先级别和运行次序无关。只和优先分配CPU时间片有关。
      

  2.   

    先运行主线程,然后再看哪个线程先起来
    当一个优先级高的线程开始运行时,优先级低的线程会被挂起
    直到优先高的线程释放对CPU的占有
      

  3.   

    进程是系统分配资源的最小单位。
    但是,CPU的调度单位是线程而不是进程。
    所以进程的优先级等级决定了程序占用CPU的优先权。
    线程的优先级起到微调的作用。
    主线程当然首先运行。
    CPU调度时,根据所有线程(本程序、别的程序)的当前状态(阻塞、就绪、等待等)
    和优先级来决定运行那个线程。