전역 변수와 heap 객체는 빠르게 협력하지만 경쟁 조건을 만들 수 있습니다.
스레드 공유/고유 상태
스레드는 같은 프로세스 안에서 메모리를 공유하지만, 실행 흐름은 독립적입니다. 공유와 고유 항목을 구분해야 버그 원인이 보입니다.
01Code 공유
02Heap 공유
03File 공유
04Stack 개별
05Register 개별
스택과 레지스터는 함수 호출, 지역 변수, 현재 실행 지점을 각자 유지합니다.
공유 데이터를 수정하는 순간 lock, atomic, 조건 변수를 검토합니다.
간헐적 오답, 재현 어려운 crash, 순서 의존 로그는 스레드 경계부터 의심합니다.