C ++, ¿es set_terminate local para cada hilo?

Deberíaset_terminate/get_terminate ¿Configurar un procesador de excepciones de terminación diferente para varios subprocesos en C ++ 2011 o C ++ 2003?

P.ej. Si tengo programa y configuro el controlador de terminación parafunc_1; Entonces comienzo 3 hilos. ¿Qué son los manejadores de terminación en nuevos hilos? ¿Qué pasa si en cada hilo estableceré el controlador de terminación afunc_2 en el primer hilo,func_3 en el segundo hilo y así sucesivamente.

N3242 (C ++ borrador 2011) no dice nada al respecto en[handler.functions] o en[support.exception]/[exception.terminate]

PD: puede responder por C ++ 2011 o por C ++ 2003 o por cualquier implementación popular de estos estándares

PPS: Hay un comentario de FCD para esto ...C ++ FCD Estado del comentario Rev. 5 N3249 (2011):

GB 71    18.6.2.4 / 18.8.2.2 / 18.8.3.2   

La seguridad del hilo destd::set_new_handler(), std::set_unexpected(), std::set_terminate(), no se especifica, lo que hace que las funciones sean imposibles de usar de una manera segura para subprocesos.

Se deben especificar las garantías de seguridad de subprocesos para las funciones y se deben proporcionar nuevas interfaces para que sea posible consultar e instalar manejadores de una manera segura para subprocesos.

LWG1365 ACEPTADO con MODIFICACIONES

Ver papelN3189

Respuestas a la pregunta(4)

Su respuesta a la pregunta