我想做一个线程每个2秒钟发送一个消息。
用Console.WriteLine("发送K");就这么简单的一个线程程序。问题一:如何写一个启动线程。
问题二:如何让这个线程每两秒钟执行一次。发送消息。
问题三:在写一个方法,把这个线程给停下来或者杀死。因为有这个需求!请各位师哥代码明示!谢谢~~小妹在这里有礼啦~
用Console.WriteLine("发送K");就这么简单的一个线程程序。问题一:如何写一个启动线程。
问题二:如何让这个线程每两秒钟执行一次。发送消息。
问题三:在写一个方法,把这个线程给停下来或者杀死。因为有这个需求!请各位师哥代码明示!谢谢~~小妹在这里有礼啦~
public class ThreadExample {
public static bool bStop;//是否停止标志量
public static void ThreadProc() {
while (!bStop) {
Console.WriteLine("发送K");
Thread.Sleep(2000);//每两秒一次
}
}在主函数,或者启动线程的地方写:
Thread t = new Thread(new ThreadStart(ThreadProc));
t.Start();
在需要停止的地方写:
ThreadExample.bStop = True;
这里简化了停止逻辑,实际上也可以用Mutex达到同样或者更安全的效果.
private void printk()
{
Console.WriteLine("发送K");
Thread.Sleep(2000);//每两秒一次
printk();
}//在main里面启动线程
Thread td = new Thread(new ThreadStart(printk));
td.Start();
//停止线程
Thread tr=Thread.CurrentThread;
if(tr!=null)
tr.Abort();