如何在Vb.net中使用suspend和resume方法?

时间:2014-10-14 02:43:20

标签: c# vb.net

我想知道Vb.net

的线程方法

在我的程序中,当我在另一台设备上接收数据时,线程正在工作

当我点击停止按钮时,我想暂停该主题,但没有支持的suspend()方法和resume()方法。我该如何使用它?

(我搜索了有关线程暂停的信息,但是每个人都在他们的程序中使用了suspend方法)

1 个答案:

答案 0 :(得分:0)

你必须告诉线程暂停或恢复。从线程外部执行此操作会破坏它,这就是为什么不支持这些类型的操作。

现在,您如何向线程发送消息?有很多种方法,但也许最直接的方法是使用一对AutoResetEvent个对象(http://msdn.microsoft.com/en-us/library/system.threading.autoresetevent(v=vs.110).aspx)。第一个对象用于表示工作线程需要暂停。第二个对象用于表示它应该恢复。工作线程应该等待或定期检查事件以确定是否需要暂停。当它暂停时,它会立即开始等待第二个事件对象。当主线程确定它已准备好恢复工作线程时,它会发出第二个事件对象的信号,这会唤醒工作线程。