C/Visual C - variables globales procesos padre-hijo

   
Vista:

variables globales procesos padre-hijo

Publicado por pablo  (2 intervenciones) el 26/08/2008 22:17:51
Hola a todos!!

Estoy haciendo una práctica en c con socket (cliente-servidor), mi problema es que tengo que controlar que el servidor únicamente atienda un numero determinado de conexiones, para ello lo que he hecho ha sido usar fork() y crear procesos hijos para atender las peticiones, mi problema surge a la hora de controlar el numero de conexiones. Lo que hice fue crear una variable que según se iban aceptando o cerrando conexiones se iba decrementando e incrementando respectivamente de manera que cuando llegaba a cero enviaba un mensaje al cliente de que no podía conectar. El problema de esto es que esta variable es heredada por los procesos hijos y claro cuando la modifico se modifica la del hijo y la del proceso padre se mantiene igual, asi que no lo puedo controlar.
A ver si alguien me puede decir como crear una variable global para el padre y los hijos, si es que se puede, o si no si hay alguna manera de que los hijos se comuniquen con el padre mediante mensajes para que este la modifique. He estado mirando por internet los mensajes entre procesos, pero por lo que he visto son mas destinados a interrupciones o para que el padre mate el proceso y no acabo de ver la forma de hacerlo.

Muchas gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder