Resultados de la búsqueda a petición "double-checked-locking"

2 la respuesta

¿Debería refactorizarse este código C # para usar la clase Lazy <T> en su lugar?

Tengo el siguiente código que se puede llamar a través de múltiples solicitudes web en el mismo segundo. Como tal, no quiero que la segunda + solicitud llegue a la base de datos, pero espero hasta que la primera lo haga. Debería refactorizar ...

6 la respuesta

Doble comprobación de bloqueo con ConcurrentMap

Tengo un fragmento de código que puede ejecutarse mediante múltiples subprocesos que necesita realizar una operación vinculada a E / S para inicializar un recurso compartido que se almacena en unConcurrentMap. Necesito hacer que este hilo de ...

5 la respuesta

Cómo demostrar que el patrón de bloqueo doblemente verificado con TryGetValue de Dictionary no es seguro para subprocesos

Recientemente he visto algunos proyectos de C # que usan un patrón de bloqueo de doble verificación en unDictionary. Algo como esto: private static readonly object _lock = new object(); private static volatile IDictionary<string, object> _cache ...

8 la respuesta

Doble comprobación de bloqueo en .NET

Me encontré con estoartículo [http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html] discutiendo por qué el paradigma de bloqueo de doble verificación está roto en Java. Es el paradigma válido para .NET (en particular, C #), si ...

7 la respuesta

Verificación doble de bloqueo en C ++: nuevo en un puntero temporal, luego asignarlo a instancia

¿Algo mal con la siguiente implementación de Singleton? Foo& Instance() { if (foo) { return *foo; } else { scoped_lock lock(mutex); if (foo) { return *foo; } else { // Don't do foo = new Foo; // because that line *may* be a 2-step // process ...

6 la respuesta

¿Por qué es volátil? Se utiliza en el bloqueo de doble verificación

DesdeHead First libro de patrones de diseño, el patrón singleton con doble bloqueo verificado se ha implementado de la siguiente manera: public class Singleton { private volatile static Singleton instance; private Singleton() {} public static ...

1 la respuesta

Doble comprobación de bloqueo con HashMap normal

De vuelta a la concurrencia. Por ahora está claro que para eldouble checked locking para trabajar la variable necesita ser declarada comovolatile. Pero entonces, ¿qué pasa si el bloqueo de doble verificación se usa como a continuación? class ...

2 la respuesta

patrón de bloqueo doblemente verificado

In C ++ y los peligros del bloqueo de doble ...

5 la respuesta

¿Cuál es el punto de hacer que la instancia de Singleton sea volátil al usar doble bloqueo? [duplicar]

Esta pregunta ya tiene una respuesta aquí:¿Por qué se utiliza la volatilidad en el bloqueo doble control? 6 respuestas

2 la respuesta

Doble comprobación de bloqueo en Android

Según muchos, el lenguaje de bloqueo de doble verificación algo común está roto para Java a menos que esté ejecutando 1.5 o posterior y use elvolatile palabra clave. Una muestra de cerradura con doble comprobación rota: // Broken multithreaded ...