单声道线程
本文关键字:线程 声道 单声道 | 更新日期: 2023-09-27 18:18:42
我正在尝试单声道/。Linux (Ubuntu)下的。Net 3.5。我尝试在Mono中使用线程,但它似乎不能正常工作。
public static void Main (string[] args)
{
Thread thread =new Thread(()=> fn("first"));
Thread thread1=new Thread(()=> fn("second"));
thread.Start();
thread1.Start();
}
static void fn(string name)
{
for(int i=0;i<10;i++)
Console.WriteLine(i+" "+name);
}
两个循环顺序运行,就好像我没有使用线程。
怎么了?
在Windows上运行,大多数情况下第一个线程的所有写操作都发生在第二个线程之前。
这个循环太微不足道了,无法真正看到多个线程并发运行的效果。第一个线程可能只是在第二个线程启动之前完成。
试着在主循环中加入一个Sleep或spin循环。
for(int i=0; i<10; i++) {
Console.WriteLine(i+" "+name);
Thread.Sleep(10);
}
或
for(int i=0; i<10; i++) {
Console.WriteLine(i+" "+name);
for(int j=0; j<100000; j++);
}