using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace VolatileDemo
{
class Program
{
//volatile可以看作一种同步锁
public static volatile bool isStop = false;
static void Main(string[] args)
{
//isStop = false;
var t = new Thread(() =>
{
var isSuccess = false;
while (!isStop)
{
isSuccess = !isSuccess;
}
});
t.Start();
Thread.Sleep(1000);
isStop = true;
t.Join();
Console.WriteLine("主线程执行结束!");
Console.ReadLine();
}
}
}
volatile,同步锁,C#,多线程,线程安全
了解C#中volatile关键字的作用,它确保变量在多线程环境下的可见性,避免数据不一致问题。示例代码展示了如何使用volatile来同步线程。