Thread 类和Runnable 接口
Java的多线程系统建立于Thread类,它的方法,它的共伴接口Runnable基础上。Thread类封装了线程的执行。既然你不能直接引用运行着的线程的状态,你要通过它的代理处理它,于是Thread 实例产生了。为创建一个新的线程,你的程序必须扩展Thread 或实现Runnable接口。Thread类定义了好几种方法来帮助管理线程。本章用到的方法如表11-1所示:
方法 | 意义 |
---|---|
getName | 获得线程名称 |
getPriority | 获得线程优先级 |
jsAlive | 判定线程是否仍在运行 |
join | 等待一个线程终止 |
run | 线程的入口点. |
sleep | 在一段时间内挂起线程 |
start | 通过调用运行方法来启动线程 |
到目前为止,本书所应用的例子都是用单线程的。本章剩余部分解释如何用Thread 和 Runnable 来创建、管理线程。让我们从所有Java程序都有的线程:主线程开始。
public class SplashActivity extends ActionBarActivityimplements Runnable {
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);//不顯示标题
super.onCreate(savedInstanceState);
Thread thread = new Thread(this);
thread.start();//获取组件
}
public void run() {
try {
Thread.sleep(2000);
Intent intent = new Intent(this, DengluActivity.class);
// 跳转界面
startActivity(intent);
finish();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}