Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Amerikano|Cls en 23 Enero 2010, 22:19 pm



Título: [Duda] Sockets Sincronizados
Publicado por: Amerikano|Cls en 23 Enero 2010, 22:19 pm
Hola, pues vengo con una duda que he tenido hace bastante tiempo desde el semestre anterior que estaba metido con un proyecto de la U, pues bien la idea es crear un juego, hasta aca va bien la cosa, pero la finalidad es que permita conectarse a dos usuarios y jugar en linea.

Pues bien he aca el problema, la principal razon es que debo sincronizar los datos que envia cada uno de los clientes a sus respectivos hilos servidores y a su vez estos envien los datos correspondientes a sus clientes para que el juego de una forma quede sincronizado.

Yo cree un pequeño modelo que me permitia hacer esto, pero sin hacer uso de funciones escenciales como synchronized y metodos como wait() y notify() para la labor, lo hice muy tosco, pero he visto que se me pierden algunos datos con mi modelo, por lo cual lo descarto, y quiero hacer uso de estas funciones.

La idea es esta:

- Al ejecutar el cliente este genera un HiloCliente que sera el encargado de recibir los datos del server.

- Cuando este cliente se ha conectado con el server se genera un HiloServidor para atender a este HiloCliente.

-Lo mismo sucedera con el segundo cliente.

Entonces cuando ya esten conectados los dos empezara todo siguiendo esta idea:

- El HiloCliente1 envia sus datos al HiloServer1
- El HiloServer1 los recibe y se lo enviara al HiloCliente2
- Cuando el HiloCliente2 los reciba, enviara los suyos al HiloServer2
- Finalmente el HiloServer2 lo recibira y se lo enviara al HiloCliente1 y asi sucesivamente.

El problema es que me he atascado en como hacer uso de synchronized y los metodos wait() y notify() para lograr esta labor. Agradeceria su colaboracion con ideas  ;)

Salu2