/// <summary>
        /// 释放分布式锁
        /// </summary>
        /// <param name="lockAttr"></param>
        private void ReleaseLock(DistributedLockAttribute lockAttr)
        {
            var lockManager = _serviceProvider.GetService <IDistributedLockManager>();
            var lockId      = lockAttr.Id;

            lockManager.ReleaseLock(lockId);
        }
        /// <summary>
        /// 获取分布式锁
        /// </summary>
        /// <param name="lockAttr"></param>
        /// <returns></returns>
        private bool AcquireLock(DistributedLockAttribute lockAttr)
        {
            var  lockManager   = _serviceProvider.GetService <IDistributedLockManager>();
            bool acquireResult = false;

            if (lockAttr.RetryTime == default(int) || lockAttr.WaitTime == default(int))
            {
                acquireResult = lockManager.AcquireLock(lockAttr.Id, TimeSpan.FromMilliseconds(lockAttr.ExpiredTime));
            }
            else
            {
                acquireResult = lockManager.AcquireLock(lockAttr.Id,
                                                        TimeSpan.FromMilliseconds(lockAttr.ExpiredTime),
                                                        TimeSpan.FromMilliseconds(lockAttr.WaitTime),
                                                        TimeSpan.FromMilliseconds(lockAttr.RetryTime));
            }

            return(acquireResult);
        }