Cuando se añaden hilos para impulsar :: thread_group como:Cómo eliminar el objeto de subproceso de subproceso cuando termina el subproceso?
boost::thread_group my_threads;
boost::thread *t = new boost::thread(&someFunc);
my_threads.add_thread(th);
todos los objetos impulso :: hilo creadas se eliminan sólo cuando my_threads
objeto está fuera de alcance. Pero el hilo principal de mi programa genera muchos hilos durante la ejecución. Entonces, si ya se han realizado alrededor de 50 subprocesos, el programa usa aproximadamente 1,5Gb de memoria y esta memoria se libera solo en la terminación del proceso principal.
La pregunta es: ¿Cómo eliminar estos objetos boost :: thread cuando la función de hilo ha finalizado?
Creo que esta pregunta es similar: http://stackoverflow.com/questions/3970818/whats-the-best-way-to-delete-boostthread-object-right-after-its-work-is-compl – Naveen
@Naveen, realmente necesito una envoltura que pueda interrumpir todos los hilos de los hijos agrupados cuando lo solicite el hilo principal. En caso de que vincules, recomiendan simplemente crear un hilo y separar el objeto boost :: thread de él. –