""" Multiprocessing crear y detener procesos compartir datos entre proscesos uso de 'lock' para prevenir 'race-conditions' uso de 'queue' administrar multiples procesos """ from multiprocessing import Process, Value, Lock import time def add_100(numero, lock): for i in range(100): time.sleep(0.01) with lock: numero.value += 1 if __name__ == "__main__": lock = Lock() nro_compartido = Value('i', 0) print('el número al comienzo es', nro_compartido.value) p1 = Process(target=add_100, args=(nro_compartido, lock)) p2 = Process(target=add_100, args=(nro_compartido, lock)) p1.start() p2.start() p1.join() p2.join() print('el número al final es', nro_compartido.value) """ el número al comienzo es 0 el número al final es 200 """