You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# SqlAppLockHelper -- Easy & Robust Distributed Mutex Application Locking with Sql Server
1
+
# SqlAppLockHelper -- Easy & Robust Distributed Mutex Application Locking with Sql Server
2
2
An ultra lightweight library that provides an easy to use API for a robust distributed mutex locking capabilities that leverage
3
3
Sql Server (e.g. sp_getapplock & sp_releaseapplock). Sql Server provides a very robust & efficient distributed mutex/locking
4
4
capability and this library exposes this in an easy to use C# .Net Standard API using custom extension methods
@@ -17,8 +17,8 @@ then I do love-me-some-coffee!*
17
17
<imgsrc="https://cdn.buymeacoffee.com/buttons/default-orange.png"alt="Buy Me A Coffee"height="41"width="174">
18
18
</a>
19
19
20
-
## Sql Server Details:
21
-
#### Both SqlClient Namespaces are Supported:
20
+
## Usage:
21
+
#### Both SqlClient Namespaces are Supported for Sql Server:
22
22
The library supports both SqlClient libraries:
23
23
- System.Data.SqlClient (Legacy; long term supported for existing applications)
24
24
- Microsoft.Data.SqlClient (Future; recommended go-forward library for new applications)
@@ -34,7 +34,7 @@ There are two scopes for Locks that are supported:
34
34
35
35
_NOTE: These scopes map to the underlying maps to the `@LockOwner` parameter of `sp_getapplock`_)
36
36
37
-
### Usage Notes:
37
+
### Genral Usage Notes:
38
38
- The generally recommended approach is to use the *Transaction* scope because it is slightly safer (e.g. more resilient against
39
39
abandoned locks) by allowing the Locks to automatically expire with the Transaction; and is the default behavior of Sql Server.
40
40
- However the *Session* scope is reliably implemented as long as you always close/dispose of the connection and/or via the `SqlServerAppLock` class; which also implements IDisposable/IAsyncDisposable C# interfaces.
0 commit comments