作者godman362 (青)
看板C_Sharp
标题[问题] Thread.Sleep()
时间Sat May 9 22:13:27 2009
想请问一下
我做了一个MultiThread,程式码如下:
private static void TimerShow()
{
while (true)
{
Console.WriteLine("Hi, SeptemHill");
Thread.Sleep(5000);
}
}
private static void TimerSay()
{
while (true)
{
Console.WriteLine("Hi, Nicole");
}
}
static void Main(string[] args)
{
ThreadStart BackThread_1 = new ThreadStart(TimerShow);
Thread Threading_1 = new Thread(BackThread_1);
ThreadStart BackThread_2 = new ThreadStart(TimerSay);
Thread Threading_2 = new Thread(BackThread_2);
Threading_1.Start();
Threading_2.Start();
for (int i = 0; i < 1000; i++)
{
Console.WriteLine(i.ToString());
}
Threading_1.Abort();
Threading_2.Abort();
}
利用Thread.Sleep()的话
我看到的是说:导致所有的Thread全部跟着暂停Sleep的时间
但是照我上面程式码做出来的结果好像不是这个样子
而利用Thread.Join()的话
才是单一Thread暂停,其余的Thread继续进行
想请问一下,我这样的观念出问题了吗?
还是我的程式码有问题?
请各位指点一下,谢谢
--
Ultimate Treein
ˍˍ
▕慕京▏
▕子印▏
 ̄ ̄
http://septemhill.pixnet.net/blog
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.118.42.238
1F:推 hamsters:Thread.Sleep 是暂停目前的执行绪 (呼叫此方法的执行绪) 05/10 00:19
2F:→ hamsters:Join 是暂停目前执行绪,等指定执行绪结束後再开始 05/10 00:20
3F:→ godman362:原来如此,那是我弄错观念了,谢谢H大 05/10 07:13