TSemaphore
Constructors
Getters
Models
TSemaphore interface
Added in v2.0.0
Source
Signature
interface TSemaphore extends Proto {}Mutations
Signature
declare const acquire: (self: TSemaphore) => STM.STM<void>;Signature
declare const acquireN: {
(n: number): (self: TSemaphore) => STM<void>;
(self: TSemaphore, n: number): STM<void>;
};Signature
declare const release: (self: TSemaphore) => STM.STM<void>;Signature
declare const releaseN: {
(n: number): (self: TSemaphore) => STM<void>;
(self: TSemaphore, n: number): STM<void>;
};withPermit
Added in v2.0.0
Source
Signature
declare const withPermit: {
(semaphore: TSemaphore): <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>;
<A, E, R>(self: Effect<A, E, R>, semaphore: TSemaphore): Effect<A, E, R>;
};withPermits
Added in v2.0.0
Source
Signature
declare const withPermits: {
(semaphore: TSemaphore, permits: number): <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>;
<A, E, R>(self: Effect<A, E, R>, semaphore: TSemaphore, permits: number): Effect<A, E, R>;
};withPermitScoped
Added in v2.0.0
Source
Signature
declare const withPermitScoped: (self: TSemaphore) => Effect.Effect<void, never, Scope.Scope>;withPermitsScoped
Added in v2.0.0
Source
Signature
declare const withPermitsScoped: {
(permits: number): (self: TSemaphore) => Effect<void, never, Scope>;
(self: TSemaphore, permits: number): Effect<void, never, Scope>;
};Other
TSemaphore
Added in v2.0.0
Source
Symbols
TSemaphoreTypeId
Added in v2.0.0
Source
Signature
declare const TSemaphoreTypeId: unique symbol;TSemaphoreTypeId type
Added in v2.0.0
Source
Signature
type TSemaphoreTypeId = typeof TSemaphoreTypeId;Unsafe
unsafeMake
Added in v2.0.0
Source
Signature
declare const unsafeMake: (permits: number) => TSemaphore;