Ejemplo_1.cpp

Ejemplo de sincronizacion de hilos con mutex
 avatar
TomasOrtellado
c_cpp
5 days ago
875 B
1
Indexable
// sincronizacion de hilos con mutex
#include <iostream>
#include <thread> // Libreria para los hilos
#include <mutex> // Libreria para utilizar mutex, permitiendo que solo un hilo acceda a un recurso compartido a la vez

std::mutex mtx; // Mutex para sincronizar el acceso a la consola

// funcion para ejecutar cada hilo
void funcionHilo(int id) {
    std::lock_guard<std::mutex> lock(mtx); // bloquea el mutex mientras se ejecuta esta secci�n
    std::cout << "Hola desde el hilo " << id << "\n";
}

int main() {
    // creamos dos hilos que ejecutan la misma funcion con diferentes identificadores
    std::thread hilo1(funcionHilo, 1);
    std::thread hilo2(funcionHilo, 2);

    // esperamos a que ambos hilos terminen su ejecucion
    hilo1.join();
    hilo2.join();

    std::cout << "Todos los hilos han terminado.\n";

    return 0;
}

Leave a Comment