15 explicit Task(
const std::shared_ptr<Recorder>& recorder)
19 std::queue<std::unique_ptr<Recorder::DelayedEventBase>> delayed_events;
22 delayed_events.swap(
recorder_->delayed_events_);
24 while (!delayed_events.empty()) {
36 const std::shared_ptr<v8::metrics::Recorder>& embedder_recorder) {
57 std::make_unique<Task>(shared_from_this()), 1.0);
void PostDelayedTask(std::unique_ptr< Task > task, double delay_in_seconds, const SourceLocation &location=SourceLocation::Current())
static V8_EXPORT_PRIVATE v8::Platform * GetCurrentPlatform()
std::shared_ptr< Recorder > recorder_
Task(const std::shared_ptr< Recorder > &recorder)
V8_EXPORT_PRIVATE void Delay(std::unique_ptr< Recorder::DelayedEventBase > &&event)
V8_EXPORT_PRIVATE void SetEmbedderRecorder(Isolate *isolate, const std::shared_ptr< v8::metrics::Recorder > &embedder_recorder)
V8_EXPORT_PRIVATE bool HasEmbedderRecorder() const
std::queue< std::unique_ptr< DelayedEventBase > > delayed_events_
std::shared_ptr< v8::TaskRunner > foreground_task_runner_
std::shared_ptr< v8::metrics::Recorder > embedder_recorder_
V8_EXPORT_PRIVATE void NotifyIsolateDisposal()
virtual void NotifyIsolateDisposal()