大哥,这两个现成是同时进行的每次打印的结果都不一样吧,就看这两个现成谁能拿到cpu了

解决方案 »

  1.   

    嗨,我执行了一下,结果是正确的呀t2 1...t2 9,然后是t1 1..t1 9
      

  2.   

    我把10改为20后就不对了
    我想应该是这样的:
    t1先起动,执行Thread.yield()后被挂起 t2执行,t2执行中t1被系统重新唤醒,两现程开始同步执行。
      

  3.   

    我去查了一下,知道了!呵呵
    Thread.yield()只是让当前线程放弃cpu使用权,并没有停掉当前线程,该线程应该进入等候队列等待cpu的下一次调用。
    够清楚了吧!!!给分咯,呵呵!
      

  4.   

    哪它(yield)就有点不好用了吧,你无法知道它什么时候又被唤醒了
    对吗?
      

  5.   

    它好像挂起后只级给同一优先级的线程调用CPU吧,等同一级的执行完后,它再被唤起