Thread中的setPriority,方法可以设置线程的优先级,但它的前提是单CPU;
而我们现在的电脑都是双CPU,该如何设置线程的优先级

解决方案 »

  1.   

    什么意思啊?lz是不是理解错了。priority其实是指分配资源的时候占多大优势。并不是说A线程的优先级比B的高,A走完了才会轮上B。假设有100个线程在4CPU的机器上跑,大家轮流运行,只是优先级高的,分配到的时间片段更多一些。
      

  2.   

    有点明白了,以前一直以为优先级高的先运行,谢谢shine333那有没有办法控制线程的执行顺序
      

  3.   

    那就是锁的问题了obj.wait() --->这个线程挂起直到另外一个线程obj.notify();具体代码搜索一下
      

  4.   

    关键字:java thread wait notify
      

  5.   

    两个线程的话用wait notify 好控制,3个以上我就没法控制了
    如果用sleep的话倒是可以 ,但这样会消耗大量的时间
    希望楼上发段代码看下
      

  6.   

    3个排队有什么不好控制的1开始的同时通知2可以调用lock.wait
    1结束的时候,调用lock.notify2开始的时候(就是wait后面),通知3可以调用lock.wait
    ....依此类推。但是,这样的话,不就是单线程嘛!!!!
      

  7.   

    用ThreadPoolExecutor啊,将队列大小设置成1,执行顺序是先进先出不就行了
    给个参考链接:http://dev.firnow.com/course/3_program/java/javajs/200797/70003.html