11 std::chrono::steady_clock::time_point
deadline;
26 virtual bool submit(std::unique_ptr<CompileTask> task,
27 std::chrono::steady_clock::time_point not_before) = 0;
32 bool submit(std::unique_ptr<CompileTask> task,
33 std::chrono::steady_clock::time_point not_before)
override;
34 std::size_t
run_for(std::chrono::microseconds budget, std::size_t max_work_units = 256);
39 std::chrono::steady_clock::time_point not_before;
40 std::unique_ptr<CompileTask> task;
42 std::vector<Entry> tasks_;
51 bool submit(std::unique_ptr<CompileTask> task,
52 std::chrono::steady_clock::time_point not_before)
override;
57 std::unique_ptr<Impl> impl_;
Definition compile_executor.hpp:23
virtual ~CompileExecutor()=default
virtual bool submit(std::unique_ptr< CompileTask > task, std::chrono::steady_clock::time_point not_before)=0
Definition compile_executor.hpp:17
virtual CompileTaskStatus run_slice(const CompileSliceBudget &budget) noexcept=0
virtual ~CompileTask()=default
Definition compile_executor.hpp:30
std::size_t run_for(std::chrono::microseconds budget, std::size_t max_work_units=256)
bool submit(std::unique_ptr< CompileTask > task, std::chrono::steady_clock::time_point not_before) override
std::size_t pending_count() const noexcept
Definition compile_executor.hpp:35
WorkerCompileExecutor & operator=(const WorkerCompileExecutor &)=delete
WorkerCompileExecutor(const WorkerCompileExecutor &)=delete
bool supported() const noexcept
~WorkerCompileExecutor() override
bool submit(std::unique_ptr< CompileTask > task, std::chrono::steady_clock::time_point not_before) override
Definition audio_renderer.hpp:20
CompileTaskStatus
Definition compile_executor.hpp:15
@ Pending
Definition compile_executor.hpp:15
@ Complete
Definition compile_executor.hpp:15
Definition compile_executor.hpp:10
std::size_t max_work_units
Definition compile_executor.hpp:12
std::chrono::steady_clock::time_point deadline
Definition compile_executor.hpp:11