공유 데이터 표시
스레드 함수가 참조하는 객체가 스레드 종료 전까지 살아 있는지 확인한다.
스레드를 만들면 현재 흐름과 다른 흐름이 동시에 실행된다. join, detach, jthread 중 어떤 방식으로 끝을 책임질지 정하지 않으면 수명 버그가 먼저 난다.
스레드 함수가 참조하는 객체가 스레드 종료 전까지 살아 있는지 확인한다.
예외 경로에서도 join이 호출되거나 jthread 소멸이 일어나도록 구조를 만든다.
스레드 내부 예외는 자동으로 호출 스레드에 전달되지 않으므로 future나 로그 정책이 필요하다.
std::jthread worker([](std::stop_token token) {
while (!token.stop_requested()) poll_once();
});