我有Delphi的线程问题。我想这在其他语言中也很常见。我有一个很长的过程,我在一个线程中完成,它填充主窗口中的列表。但如果某些参数在同一时间内发生变化,那么我应该停止当前正在执行的线程并从头开始。 Delphi建议通过设置Terminated:= true并在线程中检查此变量的值来终止线程。然而,我的问题是,长的执行部分被埋在一个库调用中,在这个调用中,我无法检查Terminated变量。因此我不得不等待这个库调用完成,这影响了整个程序。如何优雅地停止长执行线程?
在这种情况下,首选的方法是什么?我可以立即杀死线程吗?
什么是长期运行的库调用? – 2008-11-01 03:41:11