Advertisement
mfgnik

Untitled

Apr 3rd, 2020
340
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.78 KB | None | 0 0
  1. #include <executors/executors.h>
  2.  
  3. bool Task::isCompleted() {
  4.     return state_ == TaskState::Completed;
  5. }
  6. bool Task::isFailed() {
  7.     return state_ == TaskState::Failed;
  8. }
  9. bool Task::isCanceled() {
  10.     return state_ == TaskState::Cancelled;
  11. }
  12. bool Task::isFinished() {
  13.     return state_ != TaskState::Waiting;
  14. }
  15. void Task::addDependency(std::shared_ptr<Task> dep) {
  16. }
  17. void Task::addTrigger(std::shared_ptr<Task> dep) {
  18. }
  19. void Task::setTimeTrigger(std::chrono::system_clock::time_point at) {
  20. }
  21. void Task::wait() {
  22.     std::unique_lock<std::mutex> task_lock(task_mutex_);
  23.     task_cv_.wait(task_lock, [this]{return isFinished();});
  24. }
  25. std::exception_ptr Task::getError() {
  26.     return std::exception_ptr();
  27. }
  28.  
  29. void Task::cancel() {
  30.     state_ = TaskState::Cancelled;
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement