Tag: BOOST-INTERPROCESS
Con el fin de evitar el crecimiento de un segmento de memoria compartida gestionada sin desmapear y remapear todas las regiones anteriores, quiero crear un asignador que cree un nuevo segmento de memoria compartida gestionada cada vez que no haya suficiente espacio en los segmentos anteriores. He investigado los “allocators” . . . Read more
Tengo esta clase base para usar memoria compartida. Los ejemplos de Boost usan una estructura de eliminación como la siguiente para manejar la memoria compartida. Lo he adaptado para mi clase SharedMemBase. cpp //Elimina la memoria compartida en la construcción y destrucción struct shm_remove { shm_remove() { shared_memory_object::remove("MySharedMemory"); } ~shm_remove(){ . . . Read more
Sé que una buena práctica al utilizar Docker es tener solo un proceso principal en cada contenedor y solo una línea CMD en ejecución. En mi caso, tengo un microservicio en Golang y las funcionalidades están implementadas en un subprocess de python. Actualmente, el proceso principal solo recibe las llamadas . . . Read more
Construyo un boost::vector en la memoria compartida creada por boost.interprocess, luego inicio dos procesos para acceder a él: uno para escribir y otro para leer. La lectura y la escritura están protegidas por un mutex compartido por proceso. Si el proceso escritor falla al actualizar el vector, ¿el proceso lector . . . Read more