summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/modules/scheduler/task_queue.idl
blob: 8c6e06dc03453f68ce1b8329b9ad791be69987d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Experimental Scheduling API Proposal:
// https://docs.google.com/document/d/1xU7HyNsEsbXhTgt0ZnXDbeSXm5-m5FzkLJAT6LTizEI/edit#
enum TaskQueuePriority {
    "immediate",
    "high",
    "default",
    "low",
    "idle"
};

[
    ImplementedAs=DOMTaskQueue,
    RuntimeEnabled=WebScheduler
] interface TaskQueue {
    readonly attribute TaskQueuePriority priority;
    Task postTask(Function callback, optional TaskQueuePostTaskOptions options, any... arguments);
    void take(Task task);
};