internal class Program
{
static bool isOutput = true;
static int index1 = 0;
static int index2 = 100;
static Barrier barrier = new Barrier(2, b =>
{
if (index1 == index2)
{
Console.WriteLine($"index1与index2相同,比对结束。");
isOutput = false;
}
else
{
Console.WriteLine($"index1与index2不同!~");
}
});
static void Main(string[] args)
{
var t = Task.Run(() => {
while (isOutput)
{
index1 = index1 + 2;
Console.WriteLine("index1:" + index1);
barrier.SignalAndWait();
}
});
var t2 = Task.Run(() =>{
while (isOutput)
{
index2++;
Console.WriteLine("index2:" + index2);
barrier.SignalAndWait();
}
});
Console.ReadLine();
}
}
