今天写了一个多线程,但是输出的时候有一个不明白的地方
本来输出的先后顺序应该如下所示
但是输出后变成了下图所示
可是我用Thread.Sleep(1000);输出顺序又正确了
代码如下
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"F:\wwwroot\eBayName\eBayCategory Two\Jewelry & Watches");
FileInfo[] fi = di.GetFiles();
int length = fi.Length;
for (int i = 0;i< length; i++)
{
ParameterizedThreadStart para = new ParameterizedThreadStart(IsReg);
Thread trd = new Thread(para);
string txtFileName = fi[i].FullName;
//Thread.Sleep(1000);
trd.Start(txtFileName);
}
Console.ReadLine();
}
static void IsReg(object name)
{
Console.WriteLine("TXT文件名: "+name);//输出文件名
}