Description[inspector] async stacks for Promise.then calls...
... which were done after the promise has been resolved.
Goal of this CL - change promise instrumentation to support better callbacks, chained after promise resolution and prepare instrumentation for adding new asyncTaskCreated instrumentation.
Instrumentation changes:
- asyncTaskScheduled(recurring) when promise is fulfilled or rejected,
- asyncTaskCancelled when promise is collected (since [1] we can be sure that promise will survive scheduled microtasks).
Minor changes:
- async task type in inspector <-> debugger API transferred by enum instead of string,
- Debug manages async task ids based on promise objects.
More details: https://docs.google.com/document/d/1u19N45f1gSF7M39mGsycJEK3IPyJgIXCBnWyiPeuJFE
[1] https://codereview.chromium.org/2581503003/
BUG=chromium:632829, v8:5738
R=dgozman@chromium.org,yangguo@chromium.org,gsathya@chromium.org
Review-Url: https://codereview.chromium.org/2578923002
Cr-Commit-Position: refs/heads/master@{#42178}
Committed: https://chromium.googlesource.com/v8/v8/+/754736d26c07454de8eace0b774a1ab13bf2c764
Patch Set 1 : tests without patch #Patch Set 2 : CL #Patch Set 3 : fixed test #Patch Set 4 : added missing handle scope #
Total comments: 2
Patch Set 5 : use set_private instead of weak map #
Total comments: 6
Patch Set 6 : addressed comments #Patch Set 7 : rebased #Patch Set 8 : rebased.. #Patch Set 9 : async-stacks #
Total comments: 12
Patch Set 10 : addressed comments #Patch Set 11 : rebased #Patch Set 12 : avoid calling functions #
Messages
Total messages: 86 (64 generated)
|