Necesito hacer alguna sincronización de proceso en C. Quiero usar un monitor, y he leído mucho sobre ellos. Sin embargo, no he podido averiguar cómo implementar uno en C. Los he visto hacer en Java y en otros lenguajes como C++, pero no puedo encontrar ejemplos en C.¿Cómo puedo codificar un monitor en C?
He consultado a través de K & R y no hay ningún ejemplo allí. Revisé en Unix Systems Programming, Communication, Concurrency and Threads, pero no pude encontrar una implementación de monitor allí.
Esto me trae aquí. ¿Dónde y cómo puedo definir un monitor? ¿Cómo lo implemento dentro del resto del código?
/* Estoy de codificación en un entorno * nix */
¿Esta implementación es a través de una función? He visto un código menor como: supervisar el código de la red {/ * aquí * /}. ¿Fue ese pseudo código o hay una estructura de palabra clave/datos para los monitores también? –
Noqueé esa función de monitor que tenía y la reemplacé con una respuesta más directa. Si quieres que me devuelvas el código solo avísame, simplemente volví a leer tu pregunta y vi que no era exactamente lo que estabas preguntando. En su comentario anterior, ese código al que se refiere es pseudocódigo, a mi leal saber y entender, ese constructo no existe en C. – JonVD
Gracias, creo que intentaré implementar el mío a través de una función con semáforos en main e intentaré Úselo para monitorear varios hilos. Necesito leer más sobre el tema, es bastante complejo. –