Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About
Closes #612
Basic tests are ported from https://github.com/tc39/proposal-async-context/blob/master/tests/async-context.test.ts
Add
AsyncLocalStorage
andAsyncContext
APIs. The former extends the latter since they provide the same functionalities. Only a subset of Node.js'sAsyncLocalStorage
is implemented:AsyncLocalStorage.prototype.getStore()
AsyncLocalStorage.prototype.run(store, callback, ...args)
This implementation is very basic and might have bugs. It also works through timers (
setTimeout()
,setInterval()
) and microtasks (queueMicrotask()
)