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
Async provides synchronization and asynchronous computation utilities for Go.
10
-
11
-
The implemented patterns were taken from Scala and Java.
9
+
Async is a synchronization and asynchronous computation package for Go.
12
10
13
11
## Overview
14
12
***Future** - A placeholder object for a value that may not yet exist.
15
13
***Promise** - While futures are defined as a type of read-only placeholder object created for a result which doesn’t yet exist, a promise can be thought of as a writable, single-assignment container, which completes a future.
16
14
***Task** - A data type for controlling possibly lazy and asynchronous computations.
15
+
***WaitGroupContext** - A WaitGroup with the `context.Context` support for graceful unblocking.
17
16
***Reentrant Lock** - Mutex that allows goroutines to enter into the lock on a resource more than once.
18
17
***Optimistic Lock** - Mutex that allows optimistic reading. Could be retried or switched to RLock in case of failure. Significantly improves performance in case of frequent reads and short writes. See [benchmarks](./benchmarks/README.md).
0 commit comments