tnblog
首页
视频
资源
登录

ABP lock锁的使用

6256人阅读 2022/4/15 14:47 总访问:1595091 评论:0 收藏:0 手机
分类: ABP
  1. /// <summary>
  2.     /// 位置与轨迹应用服务层
  3.     /// </summary>
  4.     public class PositionAndTrajectory : FinanceAppServiceBaseIPositionAndTrajectory
  5.     {
  6.         #region 依赖注入
  7.         private readonly AsyncLock _Mutex = new AsyncLock();//锁
  8.         /// <summary>
  9.         /// 依赖注入
  10.         /// </summary>
  11.         public PositionAndTrajectory()
  12.         {
  13.         }
  14.         #endregion
  15.         
  16.         /// <summary>
  17.         /// 需要限制的方法
  18.         /// </summary>
  19.         public async Task<boolGetEveryDayLoginToken()
  20.         {
  21.             try
  22.             {
  23.                 return true;
  24.             }
  25.             catch (Exception e)
  26.             {
  27.                  throw new UserFriendlyException(e.Message);
  28.             }
  29.         }
  30.         /// <summary>
  31.         /// 测试方法
  32.         /// </summary>
  33.         /// <returns></returns>
  34.         public async Task<TransTimeManageResultDto> TransTimeManage( )
  35.         {
  36.             try
  37.             {
  38.                       //_Mutex.Lock() 同步锁
  39.                       //异步锁
  40.                  using (await _Mutex.LockAsync())
  41.                     {
  42.                     //高并发时只有一个线程可以执行改方法
  43.                         await GetEveryDayLoginToken();
  44.                     }
  45.                 return new TransTimeManageResultDto();
  46.             }
  47.             catch (Exception e)
  48.             {
  49.                 throw new UserFriendlyException(e.Message);
  50.             }
  51.         }
  52.        }


评价
没有个性,不需要签名
排名
4
文章
473
粉丝
3
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术