Bonjour,
Je suis en train de développer un mini chat avec des sockets en C. Du coté client, j'ai parallélisé l'envoi de message vers le serveur et le réception pour l'affichage. Pour ce qui est de la réception et de l'affichage, voici mon code :
while(1){
recv(id_socket, buffer, sizeof(buffer), 0);
printf("%s\n", buffer);
}
Le petit problème est qu'apparemment mon recv() ne bloque pas et du coup mon client par dans un boucle infini... Est ce que vous savez d'ou cela peut-il venir?
En plus de ca, j'ai un problème tout a fait similaire avec un scanf() qui ne bloque pas non plus... Voici le code pour l'envoi vers le serveur :
while(strcmp(msg, "exit")!=0){
printf("------------>saisir une chaine\n");
scanf("%s%*c", msg);
send(id_socket, msg, sizeof(msg), 0);
}
Encore une fois mon client par dans une boucle infini...
Ca fait deux jours que je galère la dessus, donc j'attends otre aide avec impatience..
eddynamique
Configuration: Mac OS X 10.6.1
Firefox 3.0.15