C# Lock 关键字
Lock 关键字
Lock关键字可以在多线程的情况下保证代码运行完成,不会被其他线程中断。通过给指定代码加锁
注意: a必须为引用类型,必须为Static静态
环境
//1.设置一个锁
private static bool _lock = false;
//2.设置全局变量
private static List<int> a = new List<int>();
模板
//访问单线程访问a
lock(a){
//是否为解锁状态
if(!_lock){
//加锁
_lock = true;
//do something;
//解锁
_lock = false;
}
}
A线程访问a数组期间,如果B线程也访问a数组,则会等待A线程访问结束,解锁后进行访问。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步