Skip to main content

@terascope/core-utils / event-loop / EventLoop

Class: EventLoop

Defined in: packages/core-utils/src/event-loop.ts:14

A simple class for detecting when the event loop is blocked. The recommend use is to call EventLoop.init(logger) and then await EventLoop.wait() where you want to slow down potentially long running synchronous code

Constructors​

Constructor​

new EventLoop(logger): EventLoop

Defined in: packages/core-utils/src/event-loop.ts:52

Parameters​

ParameterType
loggerLogger

Returns​

EventLoop

Properties​

PropertyModifierTypeDefault valueDefined in
checkedInDiffpublicnumberundefinedpackages/core-utils/src/event-loop.ts:45
loggerreadonlyLoggerundefinedpackages/core-utils/src/event-loop.ts:52
DEFAULT_HEARTBEATstaticnumber1000packages/core-utils/src/event-loop.ts:15

Accessors​

blocked​

Get Signature​

get blocked(): boolean

Defined in: packages/core-utils/src/event-loop.ts:72

Returns​

boolean

Methods​

cancel()​

cancel(): void

Defined in: packages/core-utils/src/event-loop.ts:79

Cancel the event loop checker

Returns​

void


init()​

static init(logger): EventLoop

Defined in: packages/core-utils/src/event-loop.ts:34

Creates or replaces an instead of a global EvenLoop

Parameters​

ParameterType
loggerLogger

Returns​

EventLoop


wait()​

static wait(): void | Promise<void>

Defined in: packages/core-utils/src/event-loop.ts:22

Adds a setTimeout if the event loop is blocked and will the delay will get slower the longer the event loop is block (with an upper limit)

Returns​

void | Promise<void>