スレを勃てるまでもないC/C++の質問はここで
■ このスレッドは過去ログ倉庫に格納されています
0489デフォルトの名無しさん
2007/03/01(木) 22:28:08winsockとかにはそれらしいのがあるのですが、socklibには無いようで・・
とりあえず、ブロッキングされてると、タイムアウトは検出できない気がしました。
環境がまだないので試してませんが、↓のようにすれば受信はできますでしょうか?
アドバイスよろしくお願いします。vxwoksとか検索しても出てこない(ノ-`)
*********************************************
struct sockaddr_in my_recaddr;
my_recaddr.sin_family = AF_INET;
my_recaddr.sin_port = portNum;
my_recaddr.sin_addr.s_addr = INADDR_ANY;//ブロードキャストを受信するために必要っぽい?
fd=sock(AF_INET,SOCK_DGRAM,0);
bind(fd,(struct sockaddr*)&my_recaddr,sizeof(my_recaddr));//ブロードキャストを受信するために必要っぽい?
while(1){
☆ ret = recv(fd, (char*)buf,sizeof(datasize));
if( ret ){
//他のタスクに受信データを送信
//タイムアウト解除通知+カウントしたものを初期化
}else{
//何かカウントして、タイムアウト通知
}
}
*********************************************
ブロッキングだと、受信するまで☆で止まってるという認識でいいんでしょうか?
■ このスレッドは過去ログ倉庫に格納されています