前台和后台线程
2008-07-19 21:02
351 查看
使用Thread建立的线程默认情况下是前台线程,在进程中,只要有一个前台线程未退出,进程就不会终止。主线程就是一个前台线程。而后台线程不管线程是否结束,只要所有的前台线程都退出(包括正常退出和异常退出)后,进程就会自动终止。一般后台线程用于处理时间较短的任务,如在一个Web服务器中可以利用后台线程来处理客户端发过来的请求信息。而前台线程一般用于处理需要长时间等待的任务,如在Web服务器中的监听客户端请求的程序,或是定时对某些系统资源进行扫描的程序。下面的代码演示了前台和后台线程的区别。 public static void myStaticThreadMethod()
{
Thread.Sleep(3000);
}
Thread thread = new Thread(myStaticThreadMethod);
// thread.IsBackground = true;
thread.Start()
如果运行上面的代码,程序会等待3秒后退出,如果将注释去掉,将thread设成后台线程,则程序会立即退出
要注意的是,必须在调用Start方法之前设置线程的类型,否则一但线程运行,将无法改变其类型
通过BeginXXX方法运行的线程都是后台线程
{
Thread.Sleep(3000);
}
Thread thread = new Thread(myStaticThreadMethod);
// thread.IsBackground = true;
thread.Start()
如果运行上面的代码,程序会等待3秒后退出,如果将注释去掉,将thread设成后台线程,则程序会立即退出
要注意的是,必须在调用Start方法之前设置线程的类型,否则一但线程运行,将无法改变其类型
通过BeginXXX方法运行的线程都是后台线程
相关文章推荐
- C# 前台线程与后台线程区别
- Android Priority Job Queue (Job Manager):后台线程任务结果传回前台(三)
- C# 前台线程与后台线程
- 线程,托管线程池,前台线程,后台线程!!!
- java前台线程和后台线程
- 后台线程与前台线程在运行性能上有什么区别
- 前台线程(Foreground Threads)和后台线程(Background Threads)
- java前台线程和后台线程
- linux中,将线程放到后台,前台,暂停的方法
- Android后台进程与前台线程间的区别使用
- IsBackground前台线程与后台线程的区别
- 前台线程与后台线程的区别
- 线程学习3——前台线程和后台线程
- c#前台线程与后台线程的区别和联系
- 前台线程和后台线程
- 一步一步学习C#中的多线程 --- 1、初识线程(3)--前台线程和后台线程
- 前台线程和后台线程之间的选择
- c#后台线程访问前台控件并显示信息示例
- 《C#编程之道》 之 如何将前台线程改为后台线程
- 前台线程和后台线程的区别