[Windows System Programming] 쓰레드 동기화 기법 - (2)
·
내가 공부한 것들/Windows 시스템 프로그래밍
[공부했던 것을 되짚어보며] https://sevenshards.tistory.com/62 [Windows System Programming] 쓰레드 동기화 기법 - (1) [공부했던 것을 되짚어보며] 이전에 공부했던 내용은 쓰레드의 생성과 소멸과 관련해서 공부를 했었습니다. 그리고 여기서 동시접근에 대한 문제점도 다뤘었습니다. 실제로 strtok과 같은 ANSI C sevenshards.tistory.com 이전 글에서 다뤘던 내용은 임계 영역에 대한 개념을 이해하고 이에 대한 동기화 방법에 대한 것이었습니다. '메모리 접근에 대한 동기화'를 다뤘었고, 이번 글에서는 '쓰레드의 실행순서'를 위주로 다루고자 합니다. [실행순서에 있어서의 동기화] "쓰레드의 실행순서를 동기화한다"는 말은 정확하게 표현하면..
[Windows System Programming] 쓰레드 동기화 기법 - (1)
·
내가 공부한 것들/Windows 시스템 프로그래밍
[공부했던 것을 되짚어보며] 이전에 공부했던 내용은 쓰레드의 생성과 소멸과 관련해서 공부를 했었습니다. 그리고 여기서 동시접근에 대한 문제점도 다뤘었습니다. 실제로 strtok과 같은 ANSI C 라이브러리 함수를 사용할 때에는 동시 참조의 위험성이 있다고 했습니다. 멀티 쓰레드 기반 프로그램에서 쓰레드에서 strtok을 사용하면 다른 쓰레드에서도 내부 정적 변수에 접근이 가능해집니다. 다른 쓰레드에서 이 함수를 호출할 때에는 정적 변수를 덮어쓰는 문제가 생기죠. 그래서 앞으로는 CreateThread가 아닌 ANSI 표준 라이브러리를 이용한 _beginthreadex 함수를 사용하기로 했습니다. 이 함수는 CretateThread와 같이 단순하게 쓰레드만 생성하지 않습니다. 쓰레드를 생성하기 앞서서 쓰..
sevenshards
'멀티쓰레드' 태그의 글 목록