""" Compartiendo memoria entre hilos. Como 'habitan' el mismo espacio de memoria, todos los hilos tiene acceso a los mismos datos. """ from threading import Thread, Lock import time valor_db = 0 def incrementar(lock): """ Funcion de prueba que simula dato de bd with lock: ... """ global valor_db # lock previene el acceso a dato por otro hilo al mismo tiempo #lock.acquire() with lock: copia_local = valor_db copia_local +=1 time.sleep(0.1) valor_db = copia_local #lock.release() if __name__ == "__main__": lock = Lock() print('Valor inicial', valor_db) hilo1 = Thread(target=incrementar, args=(lock,)) hilo2 = Thread(target=incrementar, args=(lock,)) hilo1.start() hilo2.start() hilo1.join() hilo2.join() print('Valor final', valor_db) print('Fin Main')