Edited.
How to shutdown(to stop it forever) current thread in a class method?
Now, I have:
methodName() {
std::unique_lock<std::mutex> locker(...);
cv.wait(locker, [this]{return ready_ || finished_;});
if (finished_) //need to terminate cur thread
...
}