Tengo algunos objetos que necesito para realizar acciones desde diferentes hilos en C++. Sé que es necesario bloquear cualquier variable que pueda ser utilizada por más de un hilo al mismo tiempo, pero ¿qué pasa si cada hilo está accediendo (escribiendo) a un miembro de datos diferente del mismo objeto? Por ejemplo, cada hilo llama a un método diferente del objeto y ninguno de los métodos llamados modifica el mismo miembro de datos. ¿Es seguro siempre que no acceda al mismo miembro de datos o de todos modos tenga que bloquear todo el objeto?Accediendo a diferentes miembros de datos pertenecientes al mismo objeto desde 2 hilos diferentes en C++
He buscado explicaciones y detalles sobre este tema, pero cada ejemplo parece centrarse en variables individuales o funciones que no son miembros.
Resumiendo: ¿Puedo acceder con seguridad a 2 miembros de datos diferentes del mismo objeto desde 2 hilos diferentes sin colocar un bloqueo en todo el objeto?
¿Cómo puede estar seguro de que nunca tendrá acceso al mismo miembro de dos hilos a la vez? –
no puede tener un bloqueo por variable de estructura en lugar de bloquear por estructura. bloqueo de grano fino? –