Пример #1
0
        /// <summary>
        /// 获得一个非阻塞锁
        /// </summary>
        /// <param name="key">键</param>
        /// <param name="timeout">过期时间</param>
        /// <param name="timeoutType"></param>
        /// <returns></returns>
        public async Task <RedisLock> GetNonBlockingLockAsync(string key, int timeout, DateTimeTypeEnum timeoutType)
        {
            var milliseconds = Convert.ToInt64(DateTimeManager.ToMilliseconds(timeout, timeoutType));
            var expiry       = new TimeSpan(milliseconds * 10000);

            return(await GetNonBlockingLockAsync(key, expiry));
        }
Пример #2
0
        /// <summary>
        /// 设置String值
        /// </summary>
        /// <param name="collectionName">集合名称</param>
        /// <param name="timeValue">时间点</param>
        /// <param name="dateTimeType"></param>
        /// <returns></returns>
        public async Task <bool> SetExpiryAsync(string collectionName, int timeValue, DateTimeTypeEnum dateTimeType)
        {
            var milliseconds = Convert.ToInt64(DateTimeManager.ToMilliseconds(timeValue, dateTimeType));
            var expiry       = new TimeSpan(milliseconds * 10000);

            return(await SetExpiryAsync(collectionName, expiry));
        }
Пример #3
0
        public void SetByAbsolute(string key, object content, double timer, DateTimeTypeEnum dateTimeType)
        {
            double millisecond = DateTimeManager.ToMilliseconds(timer, dateTimeType);

            SetByAbsolute(key, content, TimeSpan.FromMilliseconds(millisecond));
        }