(급도움 필요)(리눅스)멀티스레드 동기화에 대한 질문
글쓴이: marionette10 / 작성시간: 월, 2013/12/09 - 2:58오후
여러개의 송신 스레드와(각각의 인터페이스)와 수신 스레드 인터페이스에 송신한 것을 몇개 받았는지에 대한 스레드와
각각의 통계를 내는 한개의 스레드가 있습니다.
송신과 수신 스레드에서 패킷을 송신 수신하고 구조체 변수 rx tx 값을 증가합니다.
그리고 통계 스레드에서는 그 rx ,tx 값을 가지고 2초주기로 sleep를 걸어 rx,tx값을 가지고 함수를 호출하여 bps, pps를 계산하여 printf로 출력하고있습니다.
근데 문제는 rx, tx값 송신 수신에서 증가하는 변수값을 제대로 나오는데 bps,pps(rx,tx변수와 함께 구조체로 안에 있는 변수) 2초주기로 화면에 출력되는데, 나왔다가 안나왔다가를 반복 하고 있습니다. 즉 12345bps 나왔다가 2초뒤에 0으로 나옵니다.
스레드의 동기화 문제라고 생각하는데, 어떻게 해야 될까요ㅕ? 조언좀 부탁드립니다.
Forums:
댓글 달기