-
-
Notifications
You must be signed in to change notification settings - Fork 586
optimize DistributedLocker #1227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||
|
reviewed |
PR Type
Enhancement
Description
Add separate
acquireTimeoutparameter for lock acquisitionDistinguish between lock expiry and acquisition timeout durations
Pass lock expiry configuration to
RedisDistributedLockconstructorUse
acquireTimeoutforTryAcquireandTryAcquireAsyncoperationsDiagram Walkthrough
File Walkthrough
IDistributedLocker.cs
Add acquireTimeout parameter to locker interfacesrc/Infrastructure/BotSharp.Abstraction/Infrastructures/IDistributedLocker.cs
acquireTimeoutparameter with default value to bothLockandLockAsyncmethodsDistributedLocker.cs
Implement separate timeout parameters for lock operationssrc/Infrastructure/BotSharp.Core/Infrastructures/DistributedLocker.cs
acquireTimeoutInSecondsparameter to bothLockandLockAsyncmethods
acquireTimeoutInSecondstoTimeSpanfor use in lockacquisition
RedisDistributedLockconstructor viaoptions lambda
acquireTimeoutforTryAcquireandTryAcquireAsynccalls instead ofgeneral timeout
acquireTimeoutinstead oftimeout