MultiThread
using System;
using System.Threading;
namespace MultiThread
{
public class Program
{
static ManualResetEvent mre = new ManualResetEvent(false);
static void Main77()
{
Thread t = new Thread(new ThreadStart(Hello));
t.Start();
while (true)
{
char a = Console.ReadKey().KeyChar;
if (a.ToString().ToUpper() == "X")
{
mre.Set();
t.Abort();
t.Join();
Console.WriteLine(t.Name + " stopped");
break;
}
}
}
static void Hello()
{
while (true)
{
if (mre.WaitOne(10000))//WaitOne 一直阻塞,WaitOne(int millisecondsTimeout) 是阻塞一定的时间,如果在规定的时间里没有收到信息,则往下执行
{
break;
}
Console.WriteLine("Hello");
}
//Console.WriteLine("Hello");
}
}
}
posted on 2011-11-15 22:33 breakpoint 阅读(171) 评论(0) 编辑 收藏 举报