Thread 方法

下表列出了Thread类的一些重要方法:

序号 方法描述
1 public void start()
使该线程开始执行;Java 虚拟机调用该线程的 run 方法。
2 public void run()

如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。

3 public final void setName(String name)
改变线程名称,使之与参数 name 相同。
4 public final void setPriority(int priority)
 更改线程的优先级。
5 public final void setDaemon(boolean on)
将该线程标记为守护线程或用户线程。
6 public final void join(long millisec)
等待该线程终止的时间最长为 millis 毫秒。
7 public void interrupt()
中断线程。
8 public final boolean isAlive()
测试线程是否处于活动状态。

测试线程是否处于活动状态。 上述方法是被Thread对象调用的。下面的方法是Thread类的静态方法。

序号 方法描述
1 public static void yield()
暂停当前正在执行的线程对象,并执行其他线程。
2 public static void sleep(long millisec)
在指定的毫秒数内让当前正在执行的线程休眠(暂停执行),此操作受到系统计时器和调度程序精度和准确性的影响。
3 public static boolean holdsLock(Object x)
当且仅当当前线程在指定的对象上保持监视器锁时,才返回 true。
4 public static Thread currentThread()
返回对当前正在执行的线程对象的引用。
5 public static void dumpStack()
将当前线程的堆栈跟踪打印至标准错误流。

以上转至:http://www.runoob.com/java/java-multithreading.html

样例如下:


package org.junit.Ts;

import javassist.compiler.ProceedHandler;

import org.junit.Test;

import com.sun.xml.internal.stream.events.ProcessingInstructionEvent;

public class ThreadTest {
	@Test
	public void fun1(){
		ThreadOpen t1=new ThreadOpen();
		t1.setName("t1");
		t1.setDaemon(true);
		t1.start();
		ThreadOpen t2=new ThreadOpen();
		t2.setName("t2");
		t2.setDaemon(true);
		t2.start();
		System.out.println("执行结束!!");
	}
}
class ThreadOpen extends Thread{
	@Override
	public void run() {
		Thread thisThread=Thread.currentThread();
		System.out.println("当前线程:"+thisThread.getName()+" ID:"+thisThread.getId());
		for (int i = 0; i < 20; i++) {
			System.out.println(thisThread.getName()+" :"+i);
		}
	}
}


标签: JAVA, 多线程

添加新评论