/*
* User: Administrator
* Email:[email protected]
* Date: 2013-7-18
* Time: 22:54
*/
using System;
using System.Threading;
namespace ThreadDome
{
class Program
{
//建立一個線程鎖辨別
private static object threadLock = new object();
public static void Main(string[] args)
{
//使10個線程全部指向同一個方法
Thread [] threads = new Thread[10];
for (int i = 0; i < 10; i++) {
threads[i]= new Thread(new ThreadStart(PrintNumbers));
threads[i].Name = string.Format("Worker thread{0}",i);
//設定為背景線程
threads[i].IsBackground =true;
}
//啟動線程
foreach (Thread t in threads) {
t.Start();
Console.ReadKey();
}
public static void PrintNumbers()
lock(threadLock)
{
Console.WriteLine("線程——>{0}正在執行 ",Thread.CurrentThread.Name);
for (int i = 0; i < 100; i++) {
Random r = new Random ();
Thread.Sleep(60*r.Next(6));
Console.WriteLine("{0}",i);
}
Console.WriteLine();
}
}