next_transid tasks don't respect queue selection very well, because
they effectively end up spinning in a loop until all other worker
threads become busy.
Back this out, and fix the priority handling in the Task library.
This reverts commit
58db4071de5f524c35b1362bfb5b1fceedea503f.
st->scan();
});
}
- m_scan_task.run();
+ m_scan_task.idle();
}
bool
// Good to go, start everything running
for (const auto &i : task_map_copy) {
- i.second.run();
+ i.second.idle();
}
}
<< " time " << crawl_time << " subvol " << subvol);
}
- // We did something! Get in line to run again (but don't preempt work already queued)
+ // We did something! Get in line to run again
Task::current_task().idle();
return;
}