关于Thread 的sleep方法

关于Thread 的sleep方法

他到底是sleep的哪个进程如:
[code="java"]
public class MyThread extends Thread {
private String message;

public MyThread(String str) {
    this.message = str;
}

/*
 * (non-Javadoc)
 * @see java.lang.Thread#run()
 */
@Override
public void run() {
    int i = 100000;
    while (i > 0) {
        System.out.print(this.message);
        i--;
    }
}

public static void main(String[] args) throws InterruptedException {
    new MyThread("x").start();
    new MyThread("y").start();

    Thread.sleep(10000);

}

}
[/code]
这时候是sleep 所有线程呢还是?
还有一种情况
[code="java"]
public class MyThread extends Thread {
private String message;

public MyThread(String str) {
    this.message = str;
}

/*
 * (non-Javadoc)
 * @see java.lang.Thread#run()
 */
@Override
public void run() {
    int i = 100000;
    while (i > 0) {
        System.out.print(this.message);
        i--;

        Thread.sleep(1000);
    }
}

public static void main(String[] args) throws InterruptedException {
    Thread t = new MyThread("x").start();
    Thread t1 = new MyThread("y").start();
}

}
[/code]
在run方法里面sleep
是不是就一定是sleep当前启动的线程呢,如t里面的sleep t线程,t1里面的sleep t1线程

sleep只对当前线程起作用,第一个例子是主线程sleep而new的两个线程不会,第二个例子你分析的基本上是对的