MCPcopy Create free account
hub / github.com/anomalyco/opencode / sleep

Function sleep

packages/core/src/util/flock.ts:76–101  ·  view source on GitHub ↗
(ms: number, signal?: AbortSignal)

Source from the content-addressed store, hash-verified

74 }
75
76 function sleep(ms: number, signal?: AbortSignal) {
77 return new Promise<void>((resolve, reject) => {
78 if (signal?.aborted) {
79 reject(signal.reason ?? new Error("Aborted"))
80 return
81 }
82
83 let timer: NodeJS.Timeout | undefined
84
85 const done = () => {
86 signal?.removeEventListener("abort", abort)
87 resolve()
88 }
89
90 const abort = () => {
91 if (timer) {
92 clearTimeout(timer)
93 }
94 signal?.removeEventListener("abort", abort)
95 reject(signal?.reason ?? new Error("Aborted"))
96 }
97
98 signal?.addEventListener("abort", abort, { once: true })
99 timer = setTimeout(done, ms)
100 })
101 }
102
103 function jitter(ms: number) {
104 const j = Math.floor(ms * 0.3)

Callers 4

acquireLockDirFunction · 0.70
killTreeFunction · 0.50
createSseClientFunction · 0.50
createSseClientFunction · 0.50

Calls 2

addEventListenerMethod · 0.80
rejectFunction · 0.50

Tested by

no test coverage detected