thread programming에서는 int 값 하나는 변경하는데도 신경을 써야한다.
int a;
a++; <= a 라는 변수를 thread가 서로 참조하는 변수라면 이것도 lock을 걸어줘야 한다.
이건 것 까지 하면서 thread 프로그래밍을 해야 하나 싶을 정도로 귀찮고 짜증나는 일이라
쉽게 풀수 있는 방법을 찾았더니 아래와 같이 gcc에서 커널에서 지원하는 atomic 연산이 있는 것을 확인했다.
http://www.test104.com/kr/tech/2223.html
http://golubenco.org/atomic-operations.html
'C언어' 카테고리의 다른 글
tokyocabinet threading error (0) | 2015.03.18 |
---|---|
thread deadlock debugging (0) | 2015.03.06 |
pthread_create@@GLIBC_2.2.5 (in /lib64/libpthread-2.12.so) (0) | 2015.03.03 |
구조체 선언과 동시에 초기값 설정 (0) | 2015.02.13 |
아파치 모듈 프로그래밍 (0) | 2015.02.01 |