-
카테고리
-
세부 분야
시스템
-
해결 여부
미해결
clone과 pthread의 반환 시기가 차이가 있나요?
19.06.11 01:01 작성 조회수 110
0
쓰레드 함수가 일정 시간이 지나고 종료가 된다면 부모 혹은 커널에게 메모리를 반환하잖아요?
clone과 pthread로 쓰레드를 만들어서 무한루프를 돌리지 않고 전역변수에 데이터를 넣는? 처리를 하는데 pthread는 종료가 된 직후 바로 메모리를 반환해서 다음 쓰레드에서 이를 읽지 못하고, clone도 똑같이 바로 반환을 하는데 다음 쓰레드가 그 정보를 읽었습니다.
즉 메모리 반환 시기가 서로 다른 것 같은데 혹시 맞는 사실인가요?
답변을 작성해보세요.
0
0
0
ProgCoach4U
지식공유자2019.06.11
상황으로 짐작컨데, 전역변수를 읽는 쪽의 타이밍 이슈이지 않을까 싶습니다. 전역변수는 clone/pthread가 종료되어도 메모리 상에 남아있는 영역이기 때문에 메모리 반환 타이밍 문제로 업데이트가 되고 안되고 차이가 발생할 것 같지는 않네요. 해당 전역변수를 읽는 타이밍이 정확히 clone/pthread가 종료된 직후인지 확인 가능하실까요? 코드를 올려주셔도 좋구요.. :)
답변 3