Pet*_*ron 5 c# multithreading suspend
我有一个在等待一个线程TcpListener.AcceptTcpClient(),该块,我想在次暂停.
我已经读过Monitor.Wait(...),但我只有使用互斥锁的经验,如果线程等待阻塞方法,它会变得有趣.
现在Thread.Suspend(...)已经过时了,我应该如何暂停线程?
这是不可能的,这是一个无法解决的竞争条件。侦听器可能在您想要挂起连接之前一微秒就接受了连接。关闭侦听器使其不接受任何连接是唯一可靠的方法。
在这里重新思考一下你的逻辑。无论该连接将做什么,让您想要停止它,都可能需要锁定它。