- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java2-9资料
第9章 多线程 ;9.1 Java中多线程的基本概念 ;9.1.1 多线程的特点 ;9.1.1 多线程的特点(续);9.2.1 多线程编程中常用的常量和方法 ;9.2.1 多线程编程中常用的常量和方法(续);9.2.1 多线程编程中常用的常量和方法(续);9.2.1 多线程编程中常用的常量和方法(续);9.2.1 多线程编程中常用的常量和方法(续);9.2.2 线程的生命周期 ;class getThreadInfo { // 程序9-1:单线程示例
public static void main(String args[ ]) {
String name;
int p;
Thread curr; ?
curr=Thread.currentThread( );
System.out.println(当前线程: +curr);
name=curr.getName( );
p=curr.getPriority( );
System.out.println(线程名: +name);
System.out.println(优先级 :+p);?
}
} ;程序输出结果:
当前线程: Thread[main,5,main]
线程名 : main
优先级 :5 ;9.2.3 创建多线程的方法 ;9.2.3 创建多线程的方法(续);// 程序9-2
class UserThread extends Thread{
int sleepTime;
public UserThread(String id) { // 构造函数
super(id);
sleepTime=(int)(Math.random( )*1000);
System.out.println(线程名: +getName( )+
,睡眠: +sleepTime+ 毫秒);
}; public void run( ) {
try{ // 通过线程睡眠模拟程序的执行
Thread.sleep(sleepTime);
}catch(InterruptedException e) {
System.err.println(运行异常: +
e.toString( ));
}
System.out.println(运行的线程是:+
getName( ));
}
};public class multThreadTest{
public static void main(String args[ ]) {
UserThread t1,t2,t3,t4;
t1=new UserThread(NO 1);
t2=new UserThread(NO 2);
t3=new UserThread(NO 3);
t4=new UserThread(NO 4);
t1.start( ); t2.start( );
t3.start( ); t4.start( );
}
};程序某次的运行结果:
线程名: NO 1,睡眠: 885 毫秒
线程名: NO 2,睡眠: 66 毫秒
线程名: NO 3,睡眠: 203 毫秒
线程名: NO 4,睡眠: 294 毫秒
目前运行的线程是:NO 2
目前运行的线程是:NO 3
目前运行的线程是:NO 4
目前运行的线程是:NO 1 ;9.2.3 创建多线程的方法(续);// 程序9-3
class UserMultThread implements Runnable{
int num;
UserMultThread(int n) {
num=n;
}
public void run( ) {
for(int i=0;i3;i++)
System.out.println(运行线程:+num);
System.out.println(结束 : +num);
}
};public class multThreadZero {
public static void main(String args[ ])
throws InterruptedException {
Thread mt1=new Thread(
new UserMultThread(1));
Thread mt2=new Thread(
new UserMultThread(2));
mt1.start( );
mt2.start( );
mt1.join( ); //
文档评论(0)