暂停/恢复线程?

时间:2011-08-31 09:34:19

标签: vb.net vs2010-express

VB.NET中是否可以暂停和恢复进程?

我想完全暂停进程或外部线程。

2 个答案:

答案 0 :(得分:2)

警告:.Suspend()已弃用。原因是暂停另一个线程甚至不是远程安全的。

让我们说在较低级别的某个地方,有一个线程执行一些重要的操作,比如写字节,现在你继续并在完成该字节范围内发生的事情之前挂起线程?它可能会暂停,直到您恢复()可能导致破坏性结果。

说:

Thread.Sleep(Time in ms) 

暂停 当前线程x毫秒。

如果您希望暂停 当前主题,那么

Thread.CurrentThread.Suspend()

以及恢复 当前主题

Thread.CurrentThread.Resume()

您需要导入命名空间以按原样使用此代码。

Imports System.Threading

或将其更改为

System.Threading.Thread.CurrentThread.Suspend()

小心,如果你不是多线程并处理自己的线程,我不推荐它。 MS折旧代码有一个原因。记在脑子里。

答案 1 :(得分:0)

这是做你需要做的事情的正确方法。
你必须在目标进程的所有线程上调用ResumeThread()SuspendThread()(API函数)......