C#使用信号量 SemaphoreSlim 实现锁

同时刻只允许1个线程且最多只能有1个线程进入此逻辑

复制代码
public async Task DoSomething()
{
    var slimlock = new SemaphoreSlim(1, 1);

    await slimlock.WaitAsync();

    try
    {
        // Do Something...
    }
    finally
    {
        slimlock.Release();
    }
}
复制代码

 

  

 

作者:pengxx

出处:https://www.cnblogs.com/pengxx/p/18256259

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   Pengxx  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示