public class MyThread extends Thread {
@Override
public void run() {
for (int x = 0; x < 100; x++) {
System.out.println(getName()+"---hello" + x);
}
}
}
main(){
MyThread my1 = new MyThread();
MyThread my2 = new MyThread();
main方法本身就是一个线程。
*public final void setDaemon(boolean on):设置线程为守护线程,一旦前台(主线程),结束,守护线程就结束了。
DaemonDemo dd = new DaemonDemo();
Thread t1 = new Thread(dd);
t1.setDaemon(true);
public final void join():等待该线程终止。
* 一旦有join()线程,那么,当前线程必须等待,直到该线程结束。
JoinDemo pd = new JoinDemo();
Thread t1 = new Thread(pd);
t1.setName("林平之");
t1.join(); //需要处理异常
测试线程的优先级问题:
* 线程默认优先级是5。范围是1-10。
* public final int getPriority():获取线程优先级
* public final void setPriority(int newPriority):更改线程的优先级。
* 注意:优先级可以在一定的程度上,让线程获较多的执行机会。
PriorityDemo pd = new PriorityDemo();
Thread t1 = new Thread(pd);
t1.setName("林平之");
t1.setPriority(10);
public static void yield():暂停当前正在执行的线程对象,并执行其他线程。
Thread.yield(); //在线程run()方法里使用。