import sys
from multiprocessing import Process, Manager

def doble(dades, result):
    res=[]
    for dada in dades:
        res.append(dada*2)
    result.update({'retorn doble': res}) 

def triple(dades, result):
    res=[]
    for dada in dades:
        res.append(dada*3)
    result.update({'retorn triple': res}) 

def enParallel(dict):
    manager = Manager()
    result = manager.dict()
    proc = [] 
    for funció in dict:
        dict[funció].append(result)
        p = Process(target=funció,
                    args= tuple(dict[funció]))
        p.start()
        proc.append(p)
    for p in proc:
        p.join()
    return result
 
dict = {doble : [(n for n in range(10))],
        triple: [(n for n in range(7))]}
resultats = enParallel(dict)
print(resultats)
