mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 12:24:24 +00:00
87a3de41b1
Use JS `setTimeout` for events and `queueMicrotask` for micro-tasks. dart2js event loop implementation is copied in `run_wasm.js` to be able to use `clearTimeout`, `setInterval`, `clearInterval`, and `scheduleMicrotask`, which are not not available in d8, and `setTimeout` in d8 does not wait before calling a callback. New passing d8 tests: - co19/LibTest/async/Future/Future.delayed_A01_t02 - co19/LibTest/async/Stream/Stream.periodic_A01_t01 - co19/LibTest/async/Stream/Stream.periodic_all_t01 - co19/LibTest/async/Stream/Stream.periodic_all_t02 - co19/LibTest/async/Stream/timeout_A04_t01 - co19/LibTest/async/StreamController/stream_all_A01_t01 - co19/LibTest/async/StreamController/stream_all_A01_t02 - co19/LibTest/async/StreamController/stream_all_A02_t01 - co19/LibTest/async/StreamController/stream_all_A02_t02 - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A01_t01 - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A01_t02 - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A02_t01 - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A02_t02 - co19/LibTest/async/Timer/Timer.periodic_A01_t01 - co19/LibTest/async/Timer/Timer_A01_t01 - co19/LibTest/core/Stopwatch/elapsedTicks_A01_t01 - language/async/call_test - language/regress/regress21795_test - lib/async/multiple_timer_test - lib/async/periodic_timer2_test - lib/async/periodic_timer3_test - lib/async/periodic_timer4_test - lib/async/schedule_microtask3_test - lib/async/schedule_microtask_test - lib/async/stream_timeout_test - lib/async/timer_isActive_test - lib/async/timer_repeat_test - lib/async/timer_test New passing Chrome tests: - co19/LibTest/async/Stream/timeout_A04_t01 - language/async/call_test - lib/async/schedule_microtask3_test Tests below fail because of async* desugaring issues and will be fixed separately: - language/async_star/no_cancel2_test - language/async_star/no_cancel_test Tests below fail because of an existing issue (#29615): - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A01_t03 - co19/LibTest/async/StreamController/StreamController.broadcast_Stream_all_A02_t03 - co19/LibTest/async/StreamController/stream_all_A02_t03 Fixes #51599. Change-Id: Ib313e99bf3b3cb3bebeddc9e47dc77425ef94481 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/305201 Reviewed-by: Aske Simon Christensen <askesc@google.com> Reviewed-by: Joshua Litt <joshualitt@google.com> Commit-Queue: Ömer Ağacan <omersa@google.com> |
||
---|---|---|
.. | ||
dart2wasm.dart | ||
run_wasm.js |