而且currentThread()静态方法甚至可以得到当前Thread的对象引用???????

解决方案 »

  1.   

    同一时间只能有一个线程在工作,sleep是停止当前正在运行的线程。
      

  2.   

    翁凯的视频里讲得有:由哪个线程执行了sleep方法,就由那个线程去"睡觉"
    比如:
    public class SimpleRunnable implements Runnable{
        public static void main(String[] args){
            SimpleRunnable r1=new SimpleRunnable("Hello");
            Thread t1=new Thread(r1);
            t1.start();
            for(int i=0;i<1000;i++){
                System.out.println("Bye");
            }    
            t1.sleep(1000);//这里并不是t1去sleep,而是执行到sleep()方法的那个线程睡觉。
        }
    }所以上面那句最好写成:Thread.sleep(1000);以免让人误解
      

  3.   

    jwbecalm(跟随你的心): 说的是啊。错了错了。今天睡醒的时候想是不是因为用了java中的代理啊??自己也只是了解一些,知道代理可以做一些系统级的工具,看过一些例子,也没有用过。
      

  4.   

    我在javaranch得到了答案,所以把这个帖子结了,主要是因为有native方法的问题。