Mutex C++

En C++11 se han introducido muchas mejoras que nos ayudan a desarrollar sistemas multi-hilo. Voy a centrarme en los mutex.

En las versiones anteriores a C++11 una forma de obtener un mutex es el que nos proporciona la librería pthread, pero para utilizarlo debíabos inicializarlo y destruirlo en estilo C, en definitiva, tienes que hacer algo más que lock/unlock cada vez que trabajas con un mutex.

C++11 nos proporciona una clase mutex, que nos abstrae de cosas que no son lock/unclock. Os recomiendo que echéis un vistazo y veáis lo limpio que queda el código: Clase mutex de C++11.

Si sigues trabajando con versiones de compiladores previos a C++11, hace tiempo me hice un wrapper que te ayuda a abstraerte del mutex de pthread, lo dejo aquí abajo por si a alguien le resulta útil.

Abajo está un Gist del Código, he vuelto a escribir el código de cabeza y puede ser que haya algún error, lo revisaré, pero lo importante es la idea de hacer una clase que envuelva la inicialización del mutex de pthread.

Comentarios

Comments powered by Disqus