Bonjour,
J'utilise des IOChannel pour une connexion par socket entre deux programmes. La connexion marche bien, j'envoie et je re�ois.
J'ai un besoin maintenant de timeout, � savoir:
A envoie un message � B,
et attends la r�ponse de B ou jusqu'� ce que le timeout soit pass�.
Comme il n'y a pas de timeout dans le read des iochannel (enfin je crois pas), au d�part je comptais, dans A:
1/ Me connecter au signal_io
2/ Ecrire � B dans le channel
3/ Me mettre en attente active tant que le bool�en RECEIVED soit faux
ou que mon timer.elapsed() soit < � TIMEOUT (variable)
=> dans cette attente active, dormir un poil de centi�me de seconde, d�piler les signaux Glib avec MainContext::Iteration
et dans la callback du signal_io, mettre RECEIVED � vrai d�s que je re�ois le message.
Le probl�me, c'est que je ne re�ois rien dans ce cas, il semble que mon d�pilage d'iteration ne fonctionne pas...
y a-t-il une solution plus simple, ou un correctif � mon id�e ?
Merci![]()
Partager