初步学习计划:多线程学习初步来源: 发布时间:星期三, 2008年12月17日 浏览:17次 评论:0
import java.io.*;
//多线程编程
public MultiThread
{
public void (String args)
{
.out.prln("我是主线程!");
//下面创建线程例子thread1
ThreadUseExtends thread1= ThreadUseExtends;
//创建thread2时以实现了Runnable接口THhreadUseRunnable类例子为参数
Thread thread2= Thread( ThreadUseRunnable,"SecondThread");
thread1.start;//启动线程thread1使的处于就绪状态
//thread1.Priority(6);//设置thread1优先级为6
//优先级将决定cpu空出时处于就绪状态线程谁先占领cpu开始运行
//优先级范围1到10,MIN_PRIORITY,MAX_PRIORITY,NORM_PAIORITY
//新线程继承创建她父线程优先级,父线程通常有普通优先级即5NORM_PRIORITY
.out.prln("主线程将挂起7秒!");
try
{
Thread.sleep(7000);//主线程挂起7秒
}
catch (InterruptedException e)
{
;
}
.out.prln("又回到了主线程!");
(thread1.isAlive)
{
thread1.stop;//如果thread1还存在则杀掉他
.out.prln("thread1休眠过长,主线程杀掉了thread1!");
}
.out.prln("主线程没发现thread1,thread1已醒顺序执行结束了!");
thread2.start;//启动thread2
.out.prln("主线程又将挂起7秒!");
try
{
Thread.sleep(7000);//主线程挂起7秒
}
catch (InterruptedException e)
{
;
}
.out.prln("又回到了主线程!");
(thread2.isAlive)
{
thread2.stop;//如果thread2还存在则杀掉他
.out.prln("thread2休眠过长主线程杀掉了thread2!");
}
.out.prln("主线程没发现thread2,thread2已醒顺序执行结束了!");
.out.prln("结束按任意键继续!");
try
{
.in.read;
}
catch (IOException e)
{
.out.prln(e.toString);
}
}//
}//MultiThread
ThreadUseExtends extends Thread
//通过继承Thread类,并实现它抽象思路方法run
//适当时候创建这Thread子类例子来实现多线程机制
//个线程启动后(也即进入就绪状态)旦获得CPU将自动它run思路方法
{
ThreadUseExtends{}//构造
public void run
{
.out.prln("我是Thread子类线程例子!");
.out.prln("我将挂起10秒!");
.out.prln("回到主线程,请稍等,刚才主线程挂起可能还没醒过来!");
try
{
sleep(10000);//挂起5秒
}
catch (InterruptedException e)
{
;
}
//如果该run思路方法顺序执行完了,线程将自动结束,而不会被主线程杀掉
//但如果休眠时间过长,则线程还存活,可能被stop杀掉
}
}
ThreadUseRunnable implements Runnable
//通过实现Runnable接口中run思路方法,再以这个实现了run思路方法类
//为参数创建Thread线程例子
{
//Thread thread2= Thread(this);
//以这个实现了Runnable接口中run思路方法类为参数创建Thread类线程例子
ThreadUseRunnable{}//构造
public void run
{
.out.prln("我是Thread类线程例子并以实现了Runnable接口类为参数!");
.out.prln("我将挂起1秒!");
.out.prln("回到主线程,请稍等,刚才主线程挂起可能还没醒过来!");
try
{
Thread.sleep(1000);//挂起5秒
}
catch (InterruptedException e)
{
;
}
//如果该run思路方法顺序执行完了,线程将自动结束,而不会被主线程杀掉
//但如果休眠时间过长,则线程还存活,可能被stop杀掉
}
}
//该可做修改如改休眠时间或优先级Priority
1
相关文章读者评论
发表评论 |