多线程
有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口
继承Thread Demo
class MyThread extends Thread {
private String name;
private int ticket;
public MyThread(String name, int ticket) {
super();
this.name = name;
this.ticket = ticket;
}
@Override
public void run() {
while (this.ticket > 0) {
//加上休眠是为了更好的看出效果
try {
Log.e("线程开始: " + name, " 卖票:ticket " + this.ticket--);
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
启动线程:
MyThread mt1 = new MyThread("线程a", 10);
MyThread mt2 = new MyThread("线程b", 15);
MyThread mt3 = new MyThread("线程c", 20);
mt1.start();
mt2.start();
mt3.start();
通过打印的log,我们可以看出,线程启动的先后顺序并不相互影响
实现Runnable接口 Demo
class MyRunnable implements Runnable {
private String name;
private int ticket;
public MyRunnable(String name, int ticket) {