인스턴트 메시징 응용 프로그램을 개발 중입니다.대기 및 신호 이외의 pthread
이것은 도움이 필요한 상황입니다. 내 코드 fgets()에 사용자가 입력 한 메시지가있는 루틴입니다. 이제 메시지를 소켓 등에 보내는 루틴을 가진 스레드를 깨울 필요가 있습니다. 어떻게해야하는지 잘 모르겠습니다.
뮤텍스를 사용하는 경우 : 내 첫 번째 스레드가 기다리지 않기를 바랍니다. 그러므로 나는 이것을 사용하고 싶지 않다. 마찬가지로 cond_variable을 사용할 수 없습니다.
이 방법을 알려주십시오.
생각하지 마세요. 두 스레드가 (a) 사용자 입력을 기다리고 (b) 네트워크를 통해 전송하는 데 걸리는 시간은 뮤텍스/비용이 부담한다고 생각하는 것과 비교되는 EONS입니다. – Duck
조건 변수를 사용할 수없는 이유는 무엇입니까? 조건 변수는 * 어떤 이벤트가 발생할 때마다 스레드를 깨우기 위해 설계되었으므로 여기서는 매우 유용 할 수 있습니다. –