C# 在C中向另一个线程传递消息#
我有一个线程在后台运行。如何从主线程发送it消息?我需要发送的唯一消息是'go'/'wakeup'使用该类。使用该类。如果您正在谈论唤醒一个睡眠线程-thread.Suspend()(wait)-thread.Resume()(go/wake up)如果您正在谈论唤醒一个睡眠线程-thread.Suspend()(wait)-thread.Resume()(go/wake up)使用或使用或如果您的线程在您希望它启动之前什么都不做,那么为什么要在您希望它启动之前启动它 如果您希望运行后台线程,然后暂停/等待某个事件,然后继续,一个简单的方法是使用C# 在C中向另一个线程传递消息#,c#,multithreading,communication,C#,Multithreading,Communication,我有一个线程在后台运行。如何从主线程发送it消息?我需要发送的唯一消息是'go'/'wakeup'使用该类。使用该类。如果您正在谈论唤醒一个睡眠线程-thread.Suspend()(wait)-thread.Resume()(go/wake up)如果您正在谈论唤醒一个睡眠线程-thread.Suspend()(wait)-thread.Resume()(go/wake up)使用或使用或如果您的线程在您希望它启动之前什么都不做,那么为什么要在您希望它启动之前启动它 如果您希望运行后台线程,然
EventWaitHandle
类族
一个简单的例子(摘自)。两个线程都应该可以访问以下内容:
private ManualResetEvent _workerWait = new ManualResetEvent(false);
然后,在工作线程中:
_workerWait.WaitOne();
现在,它将阻塞,直到主线程调用:
_workerWait.Set()
有关选项和一些示例的更完整的讨论,请参见:如果您的线程在您希望它启动之前什么都不做,那么为什么要在您希望它启动之前启动它 如果您希望运行后台线程,然后暂停/等待某个事件,然后继续,一个简单的方法是使用
EventWaitHandle
类族
一个简单的例子(摘自)。两个线程都应该可以访问以下内容:
private ManualResetEvent _workerWait = new ManualResetEvent(false);
然后,在工作线程中:
_workerWait.WaitOne();
现在,它将阻塞,直到主线程调用:
_workerWait.Set()
有关选项和一些示例的更完整讨论,请参阅: