CSDN论坛 > Delphi > VCL组件开发及应用

如何正常终止线程??? [问题点数:0分]

Bbs2
本版专家分:158
结帖率 100%
CSDN今日推荐
Bbs7
本版专家分:11304
Bbs2
本版专家分:158
Bbs7
本版专家分:20381
Blank
红花 2003年10月 Delphi大版内专家分月排行榜第一
Blank
蓝花 2003年8月 Delphi大版内专家分月排行榜第三
Bbs5
本版专家分:4454
Bbs7
本版专家分:13233
Bbs5
本版专家分:2344
匿名用户不能发表回复!
其他相关推荐
用signal结束多个线程
在创建多线程时,有时可能几个线程里面都是死循环,如果结束这些线程呢?可以用signal(),这里介绍signal的一个应用。 当然,不用signal(),按Ctrl+C也可以直接结束。// file name:signal_to_stop_thread.c // 接收到特定的信号量,结束多个线程 #include #include #include #include #include //typedef int bool; #define MY_FALSE 0 #d
C# 线程参考手册 进程线程的控制
开发C#线程程序 如何控制线程 开始线程 终止线程 并发进程等
如何正确停止java中的线程
为什么不能使用Thread.stop()方法? 从SUN的官方文档可以得知,调用Thread.stop()方法是不安全的,这是因为当调用Thread.stop()方法时,会发生下面两件事: 1. 即刻抛出ThreadDeath异常,在线程的run()方法内,任何一点都有可能抛出ThreadDeath Error,包括在catch或finally语句中。 2. 释放该线程所持有的所有的锁
如何正确停止一个线程
首先肯定是不能用Thread的stop()方法的,因为此方法是非常不安全的,而且已经被废弃了,那么在这里就给出一种官方的推荐方案。    private static Thread mThread; private static Thread mThread; static StringMain.MyRunnable mRunnable = new StringMain().new MyRu
线程的阻塞+通过外部干涉终止一个线程
线程的生命周期 如何停止一个线程,有两种方式 1.自然的终止,线程体正常执行完毕,这个线程就会终止 2.外部干涉:     1)在线程体内定义线程体使用的标识     2)在线程体中使用该标识,即run方法中     3)提供对外方法改变该标识     4)外部根据条件调用这个方法 见代码示例: public class CloseThre
MFC 线程的退出方法
A.线程函数的返回(推荐用法)(需要考虑的是catch/运行标志/错误处理等方法) B.ExitThread函数(不推荐) C.同一个进程或者另一个进程中的线程调用TerminateThread函数(应该避免这种方法) D.包含线程的进程终止(应该避免使用这种方法) 线程函数的返回可以确保线程中的C++对象被撤销函数正确的撤销,操作系统正确的释放线程堆栈所使用的内存,系统将线程的退
VC++多线程编程基础实例和源代码
如何创建Worker线程、UI线程、终止 挂起 恢复线程,信号量、互斥量、临界区的设计
Java中如何安全终止一个线程?
在最初的JDK版本中,Thread类提供了一个线程终止的方法stop()方法,但是现在在JDK源码中发现,stop()方法已经被废弃。主要原因是:stop()方法太过暴力。强制终止一个正在执行的线程。这样的话会造成一些数据不一致的问题。   现在常用的是线程中断的方法:严格的讲,线程中断不会使线程立即退出,而是给线程发送一个通知,告诉目标线程,有人需要你退出啦!至于目标线程接到通知后如果处理,...
Qt优雅地结束线程
如果一个线程运行完成,就会结束。可很多情况并非这么简单,由于某种特殊原因,当线程还未执行完时,我们就想中止它。 不恰当的中止往往会引起一些未知错误。比如:当关闭主界面的时候,很有可能次线程正在运行,这时,就会出现如下提示: QThread: Destroyed while thread is still running 这是因为次线程还在运行,就结束了UI主线程,导致事件循环结束。这个问题在
Java停止一个线程的几种方法
Java中停止一个线程有三种方法,分别是stop,interrupt和设置标志位,我们依次来看一下这三种方法。 首先不推荐使用stop方法,原因有两点: 1、原则上只要一调用thread.stop()方法,线程就会立即停止,并抛出ThreadDeath error,查看了Thread的源代码后发现,原先Thread.stop0()方法是同步的,而如果我们工作线程的run()方法也是同步,那么这
关闭
关闭