sobre sockets y clientes en espera (c)

weno... he estao leyendo guias y no me termino de aclarar...

tengo un programa con varios clientes, a cada uno tengo que enviarle unas cosas u otras segun la respuesta. Vamos que segun lo que me responda uno al otro le envio otra cosa o no.

se supone que tengo que esperar a que un cliente le envie informacion al servidor para que este lo envie al siguiente cliente... ¿que puedo hacer para que espere y este escuchando en el socket a ver si el serv le envia algo nuevo?

he usado la llamada listen.. pero no la he visto usada en ningun cliente de los que he estado mirando y solo la uso en el servidor... no se como hacerlo la verdad
clientes de ke? para escuchar en un puerto una conexion , tienes ke usar bind() y luego pues listen() read() etc.. y ademas usar cosas como select, poll , (estas ya son mas jodidas) epoll , kqueue
para ver cuando en el descriptor llegan datos...etc etc

para programacion de sockets lo mejor para empezar es la guia beej
googlea
Para lo que quieres hacer no tienes más remedio que usar un select que te avise cuando haya datos en algun socket.
hay mas "event-waiters" y mejores que select :) pero vamos para cualquier programa que no necesite mucho rendimiento, select vale :P
Escrito originalmente por GTTURBO
hay mas "event-waiters" y mejores que select :) pero vamos para cualquier programa que no necesite mucho rendimiento, select vale :P


¿Cuales? (Por preguntar que no quede :P :P :P )
nos olvidamos de kqueue que es para freebsd pero que el rendimiento es acojonante :)
6 respuestas