io.janstenpickle.hotswapref
Type members
Classlikes
Adds functionality to HotswapRefConstructor to check whether input I has changed and only if it has, swap the
current value of R with a new cats.effect.kernel.Resource.
Adds functionality to HotswapRefConstructor to check whether input I has changed and only if it has, swap the
current value of R with a new cats.effect.kernel.Resource.
- Companion:
- object
A concurrent data structure that wraps a cats.effect.std.Hotswap providing access to R using a
cats.effect.kernel.Ref, that is set on resource acquisition, while providing asynchronous hotswap functionality
via calls to swap.
A concurrent data structure that wraps a cats.effect.std.Hotswap providing access to R using a
cats.effect.kernel.Ref, that is set on resource acquisition, while providing asynchronous hotswap functionality
via calls to swap.
In short, calls to swap do not block the usage of R via calls to access.
Repeated concurrent calls to swap are ordered by a semaphore to ensure that R doesn't churn unexpectedly. As
with calls to swap on cats.effect.std.Hotswap, swap will block until the previous
cats.effect.kernel.Resource is finalized. Additionally open references to R are counted when it is accessed
via access, any R with open references will block at finalization until all references are released, and
therefore subsequent calls to swap will block.
- Companion:
- object
Use some I to construct R via a provided function, within a HotswapRef.
Use some I to construct R via a provided function, within a HotswapRef.
Calls to swapWith update the value of R within HotswapRef with provided with some I.
- Companion:
- object