Articles of Sincronización de

android sqlite sincronización bidireccional sqlite

Necesito sincronizar mi base de datos SQLite de Android con mi base de datos del servidor en la nube, y hacerlo de forma bidireccional en un entorno multiusuario. He encontrado y la introducción a la solución aquí, pero me gustaría leer sobre una mejor solución / algoritmo.

Diferencias entre implícito, explícito y fluido

¿Cuáles son las diferencias exactas entre implicitwait() , explicitwait() y fluentwait() ? ¿Podría explicar con ejemplos?

¿Cómo hacer un locking de lectura múltiple / escritura simple desde primitivas de sincronización más básicas?

Hemos encontrado que tenemos varios lugares en nuestro código donde las lecturas simultáneas de datos protegidos por un mutex son bastante comunes, mientras que las escrituras son raras. Nuestras mediciones parecen decir que el uso de un mutex simple dificulta seriamente el rendimiento del código al leer esos datos. Entonces, lo que necesitaríamos es un […]

WaitForSingleObject y WaitForMultipleObjects equivalentes en Linux

Estoy migrando una aplicación de windows a linux. Estoy enfrentando un problema con respecto a las interfaces WaitForSingleObject y WaitForMultipleObjects . En mi aplicación, genero múltiples hilos donde todos los hilos esperan eventos del proceso principal o se ejecutan periódicamente por cada t segundos. He comprobado pthread_cond_timedwait , pero tenemos que especificar el tiempo absoluto […]

Collections.synchronizedList y sincronizado

List list = Collections.synchronizedList(new ArrayList()); synchronized (list) { list.add(“message”); } ¿El bloque “sincronizado (lista) {}” realmente necesita aquí?

Cómo adquirir un candado con una llave

¿Cuál es la mejor manera de evitar la actualización simultánea de un registro en un conjunto clave-valor sin bloquear todo el conjunto? Semánticamente, estoy buscando algún tipo de locking por una clave (idealmente, la implementación de Java, pero no necesariamente): interface LockByKey { void lock(String key); // acquire an exclusive lock for a key void […]

Bloque sincronizado Java vs. Collections.synchronizedMap

¿El siguiente código está configurado para sincronizar correctamente las llamadas en synchronizedMap ? public class MyClass { private static Map<String, List> synchronizedMap = Collections.synchronizedMap(new HashMap<String, List>()); public void doWork(String key) { List values = null; while ((values = synchronizedMap.remove(key)) != null) { //do something with values } } public static void addToMap(String key, String value) […]

Variable Condicional vs Semáforo

¿Cuándo se debe usar un semáforo y cuándo se debe usar una variable condicional (CondVar)?

¿Se solicita la garantía lock () adquirida?

Cuando varios hilos solicitan un locking en el mismo objeto, ¿garantiza el CLR que los lockings se obtendrán en el orden en que se solicitaron? Escribí una prueba para ver si esto era cierto, y parece indicar que sí, pero no estoy seguro de si esto es definitivo. class LockSequence { private static readonly object […]

Sincronización en un valor entero

Posible duplicado: Cuál es la mejor manera de boost el número de lockings en java Supongamos que quiero bloquear en función de un valor entero de identificación. En este caso, hay una función que extrae un valor de un caché y realiza una recuperación / almacenamiento bastante caro en el caché si el valor no […]