salut,
je veut savoir comment je peut rendre mon recv non bloquant si pas de données en reception (donc passer à l'instruction suivante)
merci d'avance
Version imprimable
salut,
je veut savoir comment je peut rendre mon recv non bloquant si pas de données en reception (donc passer à l'instruction suivante)
merci d'avance
j'ai lu l'article de man page sur la fonction F_SETFL mais je comprend pas comment l'etuliser?
Lis la man-page en entier ! Il faut passer MSG_DONTWAIT dans les flags, soit le troisième paramètre de recv().
j'ai essayé de mettre sa <<nombre_de_caractere=recv(id_de_la_socket,Buf,sizeof(Buf),MSG_DONTWAIT);>>
mais il me retourne <<error C2065: 'MSG_DONTWAIT' : undeclared identifier>>
?????
MSG_DONTWAIT est un flag qui n'est défini que pour les unixoïdes. Sous Windows, il existe d'autres méthodes (également disponibles sous unix) qui permettent d'arriver à la même fin.
Merci de me répondre mais voila ma situation :
Je veux connecter un client à un serveur (en fait faire un VPN). Le serveur est destiné à lire les données de sa carte réseau virtuelle, les envoyer via une socket (send). Le client reçoit les données via son socket (recv) et écrit les donnée reçues sur sa carte reseau virtuelle puis il va lire les données de sa carte et l'envoyer via son socket (send) vers le serveur qui de son coté va recevoir les données (recv) et les ecrire sur sa carte réseau virtuelle. Le programme marche bien mais le ping est dans un seul sens du serveur vers le client. Je comprend que mon recv est bloqué j'ai essayer de faire une socket non bloquante mais elle ne marche pas .
Est ce que vous pouvez me dire comment corriger ce problème.
Merci d'avance