Действие при остановке в C++
Функцию на остановку регистрирует std::stop_callback: ее вызывают, когда для токена запрашивают остановку.
Создадим источник, повесим короткий callback
и запросим остановку из main:
#include <iostream>
#include <stop_token>
int main() {
std::stop_source source;
std::stop_token token = source.get_token();
std::stop_callback cb(token, []() {
std::cout << "cb\n";
});
source.request_stop();
return 0;
}
Повесьте std::stop_callback на токен источника; callback выводит "off". Запросите остановку через std::stop_source.