Resultados de la búsqueda a petición "condition-variable"

1 la respuesta

¿Las variables de condición todavía necesitan un mutex si está cambiando el valor verificado atómicamente?

Aquí está la forma típica de usar una variable de condición: // The reader(s) lock(some_mutex); if(protected_by_mutex_var != desired_value) some_condition.wait(some_mutex); unlock(some_mutex); // The writer lock(some_mutex); ...

1 la respuesta

std :: condition_variable - Espera varios hilos para notificar al observador

mi problema se ve así: Tengo un observador que contiene std :: condition_variable y std :: mutex, mis objetos de subproceso de trabajo tienen un puntero al observador. Cada vez que un subproceso de trabajo finaliza su trabajo, llama a ...

9 la respuesta

¿Por qué las funciones variables de condición de pthreads requieren un mutex?

Estoy leyendo sobrepthread.h; las funciones relacionadas con la variable de condición (comopthread_cond_wait(3)) requieren un mutex como argumento. ¿Por qué? Por lo que puedo decir, voy a crear un mutexsólo utilizar como ese argumento? ¿Qué se ...

1 la respuesta

¿Por qué no hay una función de espera para condition_variable que no vuelva a bloquear el mutex?

Considere el siguiente ejemplo. std::mutex mtx; std::condition_variable cv; void f() { { std::unique_lock<std::mutex> lock( mtx ); cv.wait( lock ); // 1 } std::cout << "f()\n"; } void g() { std::this_thread::sleep_for( 1s ); cv.notify_one(); } ...

4 la respuesta

¿Cómo trato con el cambio del reloj del sistema mientras espero en un std :: condition_variable?

Estoy tratando de implementar un código multiplataforma en C ++ 11. Parte de este código implementa un objeto semáforo utilizando unastd :: condition_variable [https://en.cppreference.com/w/cpp/thread/condition_variable] . Cuando necesito hacer ...

4 la respuesta

condition variable: ¿por qué llamar a pthread_cond_signal () antes de llamar a pthread_cond_wait () es un error lógico?

Está escrito en el tutorial de hilos POSIXhttps: //computing.llnl.gov/tutorials/pthreads [https://computing.llnl.gov/tutorials/pthreads/] que es un error lógico. mi pregunta es ¿por qué es un error lógico? En mi programa, necesito usar estas ...

1 la respuesta

condición variable [cerrado]

Cuáles son los principios de una variable de condición en la sincronización de los procesos de los sistemas operativos?

1 la respuesta

Usage ejemplo de boost :: condition :: timed_wait

¿Alguien tiene un ejemplo de cómo usar más fácilmente boost :: condition :: timed_wait? Hay algunos hilos sobre el temaaqu [https://stackoverflow.com/questions/2259025/how-do-i-get-boostconditiontimed-wait-to-compile] , ...

4 la respuesta

¿Cuál es la diferencia entre std :: condition_variable y std :: condition_variable_any?

Probablemente me estoy perdiendo algo obvio, pero no puedo ver ninguna diferencia entrestd::condition_variable ystd::condition_variable_any. ¿Por qué necesitamos ambos?