jueves, septiembre 08, 2005

Threads y C++(estándar)

Hoy leyendo LtU me he encontrado con la referencia a "Threads Cannot be Implemented as a Library" de Hans J. Boehm. En el artículo se argumenta que los threads no pueden ser manejados por una librería, sino que el lenguaje va a usarlos debe tener una política de gestión de memoria que los incluya en su definición. Y pone el ejemplo de C(++) y los Pthreds, con casos en los que no se garantiza la corrección. En esta línea se estaba haciendo en la estandarización de C++ un esfuerzo que ya comentamos en "Los peligros de programar con threads".
Eso si, por lo que leo en los comentarios de LtU, en general los compiladores tienen extensiones para evitar este tipo de cosas, pero el modelo de memoria estándar no lo garantiza. Si no fuese así ya nos habríamos enterado de la inconsistencia :)

La misma entrada en BP