Tengo un script que parsea log que le entra por un socket udp y estoy llegando
el límite de un procesador en una máquina de cuatro.
Estuve pensando la mejor manera de aprovechar los cuatro procesadores y finalmente
me decidí a hacerlo multihilo porque suponía que usar el mismo segmento de memoria
(teniendo en cuenta que ithreads no mantiene el mismo segmento) para pasar datos
entre hilos es la forma más 'eficaz' que veo.
He descartado la opción de crear hijos y pasar datos por sockets o con un segmento
de memoria compartido por diferentes razones.
Pero me encuentro que no puedo compartir un hash indexado de más de un nivel de forma
sencilla sin hacer verdaderas locuras que echan al traste la velocidad que quiero
usando threads.
He visto incluso las varias implementaciones de threads de Perl y no me terminan de
convencer ¿Alguien ha probado coro? ¿Usa correctamente todos los procesadores de una
máquina?
En fin, que la pregunta aquí es: ¿alguien se ha pegado con este problema antes? ¿alguna
idea que no sea $hash{'uno'}{'dos'} = &share({}); ?
Estoy pensando también en usar el módulo Storable pero supongo que al final es añadir
capas y capas.
Gracias.