多线程--线程中断
2010-08-22 09:05
211 查看
设计思路:
1,新建一个线程,其启动参数是要输出其运行状态。
2,中断主线程若干秒,让新建线程持续运作。
3,中断新建线程,输出起运行次数和运行状态。
int count = 0;
Thread t2 = new Thread(() =>
{
try
{
while (true) //永真表达式,只要线程存在就一直输出。
{
Console.WriteLine(Thread.CurrentThread.ThreadState);
count++;
//Thread.Sleep(1000);
}
}
catch (ThreadAbortException absortException)
{
Console.WriteLine("{0}", count);
Console.WriteLine("catch");
Console.WriteLine(Thread.CurrentThread.ThreadState);
Console.WriteLine((string)absortException.ExceptionState);
}
}); //新建线程完毕
t2.Start();
Thread.Sleep(1000); //主线程停止2秒
t2.Abort("haha");
Thread.Sleep(100);
Console.WriteLine(t2.ThreadState);
Console.ReadKey();
Console.ReadKey();
Console.ReadKey();
其输出结果,在我的相册的我的电脑目录下。
1,新建一个线程,其启动参数是要输出其运行状态。
2,中断主线程若干秒,让新建线程持续运作。
3,中断新建线程,输出起运行次数和运行状态。
int count = 0;
Thread t2 = new Thread(() =>
{
try
{
while (true) //永真表达式,只要线程存在就一直输出。
{
Console.WriteLine(Thread.CurrentThread.ThreadState);
count++;
//Thread.Sleep(1000);
}
}
catch (ThreadAbortException absortException)
{
Console.WriteLine("{0}", count);
Console.WriteLine("catch");
Console.WriteLine(Thread.CurrentThread.ThreadState);
Console.WriteLine((string)absortException.ExceptionState);
}
}); //新建线程完毕
t2.Start();
Thread.Sleep(1000); //主线程停止2秒
t2.Abort("haha");
Thread.Sleep(100);
Console.WriteLine(t2.ThreadState);
Console.ReadKey();
Console.ReadKey();
Console.ReadKey();
其输出结果,在我的相册的我的电脑目录下。
相关文章推荐
- 多线程的使用——中断线程详解(Interrupt)
- boost库中thread多线程详解5——谈谈线程中断
- Java 多线程 - 线程 - 中断 - 3
- Java 多线程的线程中断
- java多线程-概念&创建启动&中断&守护线程&优先级&线程状态(多线程编程之一)
- JAVA多线程——线程的中断
- java 多线程学习笔记之 线程中断
- Java多线程-通过线程的中断来深入学习interrupt方法,Volatile关键字
- Java 多线程 - 线程 - 中断 - 2
- 多线程_线程控制之中断线程
- 【Java 语言】Java 多线程 一 ( 线程启动 | 线程中断 )
- Java 多线程:线程中断
- 多线程运行若干时间,主线程中断
- Java多线程(二)——线程中断interrupt
- 第二篇 多线程的使用——中断线程详解(Interrupt)
- [原]Java多线程编程学习笔记之一:线程中断(含代码)
- 【Boost】boost库中thread多线程详解5——谈谈线程中断
- java多线程--中断线程
- 【Boost】boost库中thread多线程详解11——线程的休眠和中断
- java 多线程 中断线程interrupt 研究