java 多线程

[color=red]利用Java语言实现多线程应用程序的方法很简单。根据多线程应用程序继承或实现对象的不同可以采用两种方式:一种是应用程序的并发运行对象直接继承Java的线程类Thread;另外一种方式是定义并发执行对象实现Runnable接口。 [/color]


一、继承Thread类的多线程程序设计方法
Thread 类是JDK中定义的用于控制线程对象的类,在该类中封装了用于进行线程控制的方法。

public class Consumer extends Thread {
int nTime;
String strConsumer;

public Consumer(int nTime, String strConsumer) {
this.nTime = nTime;
this.strConsumer = strConsumer;
}

public void run() {
while (true) {
try {
System.out.println("Consumer name:" + strConsumer + "\n");
Thread.sleep(nTime);
} catch (Exception e) {
e.printStackTrace();
}
}
}

static public void main(String args[]) {
Consumer aConsumer = new Consumer(1000, "aConsumer");
aConsumer.start();
Consumer bConsumer = new Consumer(2000, "bConsumer");
bConsumer.start();
Consumer cConsumer = new Consumer(3000, "cConsumer ");
cConsumer.start();
}

}


二、实现Runnable接口的多线程程序设计方法
Java语言中提供的另外一种实现多线程应用程序的方法是多线程对象实现Runnable接口并且在该类中定义用于启动线程的run方法。这种定义方式的好处在于多线程应用对象可以继承其它对象而不是必须继承Thread类,从而能够增加类定义的逻辑性。

class Consumer implements Runnable{
int nTime;
String strConsumer;

public Consumer(int nTime, String strConsumer) {
this.nTime = nTime;
this.strConsumer = strConsumer;
}

public void run(){
while (true) {
try {
System.out.println("Consumer name:" + strConsumer + "\n");
Thread.sleep(nTime);
} catch (Exception e) {
e.printStackTrace();
}
}

}
static public void main(String args[]){
Thread aConsumer = new Thread(new Consumer(1000, "aConsumer"));
aConsumer.start();
//其它对象实例的运行线程
Consumer bConsumer = new Consumer(2000, "bConsumer");
bConsumer.start();
Consumer cConsumer = new Consumer(3000, "cConsumer ");
cConsumer.start();
}
}



详细参照:[url]http://industry.ccidnet.com/art/299/20020822/23179_1.html[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值