You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 26, 2019. It is now read-only.
Rough thoughts: Web IDL's callback function type gets modified to have a zone field. The conversion from JS functions to Web IDL callback functions stores the current zone alongside the JS function. Web IDL's "invoke" algorithm for invoking callback functions uses this spec's CallInZone.
The text was updated successfully, but these errors were encountered:
For the reference, here is how present native async stacks are implemented in Blink:
Async markup API
classInstrumentation {
// Notify debugger that native async task has been scheduled (setTimeout).// V8 stack is captured here and is associated with the |task|.voidasyncTaskScheduled(const String& taskName, void* task, bool recurring);
// Notify debugger that native async was canceled (clearTimeout).// Pops stack from async call chain for |task|.voidasyncTaskCanceled(void* task);
// Notify debugger that callback for the async task started execution.// Sets |task| as currently executing so that further |asyncTaskScheduled|// could be associated with it.voidasyncTaskStarted(void* task);
// Notify debugger that callback for the async task callback completed.voidasyncTaskFinished(void* task);
// RAII object for asyncTaskStarted / asyncTaskFinished.classAsyncTask { ... }
}
Rough thoughts: Web IDL's callback function type gets modified to have a zone field. The conversion from JS functions to Web IDL callback functions stores the current zone alongside the JS function. Web IDL's "invoke" algorithm for invoking callback functions uses this spec's CallInZone.
The text was updated successfully, but these errors were encountered: