using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
namespace ConsoleApp1
{
class Program
{
public static int number = 3;//鞋子总数
public static bool isRunTrhead = true;//控制线程是否结束
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
//上一个线程是否结束控制
if (!isRunTrhead) {
i--;
continue;
}
//传递参数
//方式一
//Thread tthread = new Thread(new ParameterizedThreadStart(setNumber));
//tthread.Start(number);
//方式二
Thread testThread = new Thread(()=>setNumber(number));
testThread.Start();
isRunTrhead = false;
//Thread.Sleep(1); //让某个线程走完再执行下一个线程,最便捷的方式睡一下,也可用上面的方式 isRunTrhead
}
}
private static void setNumber(object obj) {
int tnumber = obj == null ? 0 : Convert.ToInt32(obj.ToString());
if (tnumber == 0)
Console.WriteLine("耐克被抢完了");
else {
Console.WriteLine("抢到了耐克");
tnumber--;
}
number = tnumber;
isRunTrhead = true;
Console.ReadKey();
}
}
}