t1 = new Thread(new ThreadStart(this.Test));
t1.Start();
while(t1.IsAlive)
{
Thread.Sleep(100000);
}我希望建立一个线程,每隔100秒执行一次test函数,这样写怎么不行呢?一运行就死机一样
t1.Start();
while(t1.IsAlive)
{
Thread.Sleep(100000);
}我希望建立一个线程,每隔100秒执行一次test函数,这样写怎么不行呢?一运行就死机一样
是让你的当前线程睡觉,等睡醒了看看另外一个现成在不在运行,没想到他每次总是运行的,结果你的主线成一睡不醒
不太明白
明白了。
t1.Start();private void Do()
{
while(t1.IsAlive)
{
this.Test();
Thread.Sleep(100000);
}
}
你在主线程中调用,当然阻塞主线程了~
t1.Start();private void Do()
{
while(true)
{
this.Test();
Thread.Sleep(100000);
}
}