using System; using System.Threading.Tasks; namespace Util.Applications.Locks { /// /// 业务锁测试服务 /// public class LockTestService { /// /// 业务锁 /// private readonly ILock _lock; /// /// 初始化业务锁测试服务 /// public LockTestService( ILock lLock ) { _lock = lLock; } /// /// 执行 /// public async Task ExecuteAsync( string key, TimeSpan? expiration = null ) { var result = await _lock.LockAsync( key, expiration ); return result ? "ok" : "fail"; } /// /// 解锁 /// public async Task UnLockAsync() { await _lock.UnLockAsync(); } } }