Buckets:
| /* global SharedArrayBuffer, Atomics */ | |
| if (typeof SharedArrayBuffer !== 'undefined' && typeof Atomics !== 'undefined') { | |
| const nil = new Int32Array(new SharedArrayBuffer(4)) | |
| function sleep (ms) { | |
| // also filters out NaN, non-number types, including empty strings, but allows bigints | |
| const valid = ms > 0 && ms < Infinity | |
| if (valid === false) { | |
| if (typeof ms !== 'number' && typeof ms !== 'bigint') { | |
| throw TypeError('sleep: ms must be a number') | |
| } | |
| throw RangeError('sleep: ms must be a number that is greater than 0 but less than Infinity') | |
| } | |
| Atomics.wait(nil, 0, 0, Number(ms)) | |
| } | |
| module.exports = sleep | |
| } else { | |
| function sleep (ms) { | |
| // also filters out NaN, non-number types, including empty strings, but allows bigints | |
| const valid = ms > 0 && ms < Infinity | |
| if (valid === false) { | |
| if (typeof ms !== 'number' && typeof ms !== 'bigint') { | |
| throw TypeError('sleep: ms must be a number') | |
| } | |
| throw RangeError('sleep: ms must be a number that is greater than 0 but less than Infinity') | |
| } | |
| const target = Date.now() + Number(ms) | |
| while (target > Date.now()){} | |
| } | |
| module.exports = sleep | |
| } | |
Xet Storage Details
- Size:
- 1.21 kB
- Xet hash:
- 518162198dc512cc17a0d5ba484d07503b88ff619103d3f42c55d2aa96a2daf4
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.