fix executor last task not clear

pull/14163/head
kswang 4 years ago
parent 444ff97206
commit 32b19aef59

@ -217,12 +217,17 @@ void Executor::OnEvent(const ExecutorEvent &event) {
if (event == ExecutorEvent::kRunGraphFinished) {
OnRunGraphFinished();
} else if (event == ExecutorEvent::kClear) {
WorkerJoin();
OnClear();
} else if (event == ExecutorEvent::kException) {
OnException();
}
}
void Executor::OnClear() {
WorkerJoin();
ClearDoneTasks();
}
void Executor::OnException() {
std::vector<std::shared_ptr<Task>> new_done_tasks;
{

@ -176,6 +176,7 @@ class Executor {
bool IsTaskReady(const std::shared_ptr<RunGraphTask> &task);
void WaitLockedInputs(const SessionPtr &session, const std::shared_ptr<RunGraphTask> &task);
void OnWorkerExit();
void OnClear();
void OnRunGraphFinished();
void OnException();
void ClearDoneTasks();

Loading…
Cancel
Save