@terascope/utils / event-loop / EventLoop
Class: EventLoop
Defined in: packages/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
new EventLoop()
new EventLoop(
logger
):EventLoop
Defined in: packages/utils/src/event-loop.ts:52
Parameters
Parameter | Type |
---|---|
logger | Logger |
Returns
Properties
Property | Modifier | Type | Default value | Defined in |
---|---|---|---|---|
checkedInDiff | public | number | undefined | packages/utils/src/event-loop.ts:45 |
logger | readonly | Logger | undefined | packages/utils/src/event-loop.ts:52 |
DEFAULT_HEARTBEAT | static | number | 1000 | packages/utils/src/event-loop.ts:15 |
Accessors
blocked
Get Signature
get blocked():
boolean
Defined in: packages/utils/src/event-loop.ts:72
Returns
boolean
Methods
cancel()
cancel():
void
Defined in: packages/utils/src/event-loop.ts:79
Cancel the event loop checker
Returns
void
init()
static
init(logger
):EventLoop
Defined in: packages/utils/src/event-loop.ts:34
Creates or replaces an instead of a global EvenLoop
Parameters
Parameter | Type |
---|---|
logger | Logger |
Returns
wait()
static
wait():void
|Promise
<void
>
Defined in: packages/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
>