서버와 클라이언트 UDP통신 구현을 하고있는데요,
서버와 클라이언트 동시에 thread를 사용해서 통신하게 하려는데 해결이 잘 안되네요.
서버의 쓰레드에서 sendto를 함과 동시에 메인함수에서 소켓을통해 계속 필요없는 패킷이 들어오네요.
대략적인 코드도 올려봅니다.
client
while(1){
th_id = pthread_create(&p_thread, NULL, myFunc, (void *)th_data);
}
void *myFunc(void *data)
{
//broadcast
setsockopt(send_sock,SOL_SOCKET, SO_BROADCAST, (char*)&so_brd, sizeof(so_brd));
//데이터를 보냄
sendto(send_sock, buf,sizeof(buf),0,(struct sockaddr*)&broad_adr, sizeof(broad_adr));