任何人都可以给我一个关于线程话题的头脑吗?我想我知道如何做一些事情,但我需要知道如何做到以下几点:
设置一个主线程将保持活动,直到我发出信号停止(如果你不知道,它将在收到数据时终止).然后我想要一个第二个线程,它将从文本框中捕获数据,并且当我向其发出信号时退出,当用户按下Enter键时,它将退出.
干杯!
解决方法
这是我怎么做…
public class ThreadA { public ThreadA(object[] args) { ... } public void Run() { while (true) { Thread.sleep(1000); // wait 1 second for something to happen. doStuff(); if(conditionToExitReceived) // what im waiting for... break; } //perform cleanup if there is any... } }
然后运行它在自己的线程…(我这样做,因为我也想发送args到线程)
private void FireThread(){ Thread thread = new Thread(new ThreadStart(this.startThread)); thread.start(); } private void (startThread){ new ThreadA(args).Run(); }
线程是通过调用“FireThread()”创建的
新创建的线程将运行,直到其停止条件得到满足,然后它死亡…
你可以通过代表来指示“主”,告诉它线程死了..所以你可以开始第二个…
最好阅读:This MSDN Article