안녕하세요 리눅스 초보 개발자입니다.
현재 제가 스레드를 2개를 사용하여
하나는 10ms 주기로 uart로 데이터를 내보내고
다른 하나는 1s 주기로 uart로 데이터를 내보내도록 코드를 아래와 같이 구현한 상태인데
Uart로 출력된 데이터를 보면
A_Tread 데이터 100개 -> B_Tread 데이터 1개의 순서로 나오는것이 이상적인데
A_Tread 데이터 180개 -> B_Tread 데이터 1개의 순서와 같이 타이밍이 맞지 않습니다.
리눅스를 많이 다뤄보지 못해 어느부분을 봐야하는지 조언 부탁드립니다.
A_Tread(){ // 10ms 주기
pthread_mutex_lock(&mutex);
//데이터 처리 로직
.....
//데이터 처리 로직
uart_write();
pthread_mutex_ulock(&mutex);
}