[Conseils] python réalisé en utilisant plus de

La mise en œuvre rapide

1 avec une fonction différente de la donnée d'entrée

de multitraitement importation Piscine 
os à l'importation, le temps, au hasard 

Task1 def (nom): 
    print ( 'Run tâche% (% s) ...' % (nom, os.getpid ())) 
    start = time.time () 
    temps .sleep (random.random () * 3) 
    end = time.time () 
    print ( 'tâche est exécutée% secondes 0.2f% s' % (nom, (fin - début))) 

si __name __ == '__ main__': 
    imprimer ( 'procédé Parent% s' % os.getpid ()) 
    p = piscine (4) 
    pour i dans la plage (5): 
        p.apply_async (TASK1, args = (i,)) 
    print ( 'attente pour tous les sous - processus fait ... ') 
    p.close () 
    p.join () 
    print (' Tous les sous - processus fait.)

  

Ou avec la fonction carte de la piscine, il est à noter que ce résultat et le rendement de séquence à l'entrée ne sont pas cohérentes i_list:

#coding: utf-8 
import multitraitement 

def m1 (x): 
    return x * x 

if __name__ == '__main__': 
    piscine = multiprocessing.Pool (multiprocessing.cpu_count ()) 
    i_list = plage (8) 
    Résultats = pool.map ( m1, i_list) 
impression (résultats)

  

 

Je suppose que tu aimes

Origine www.cnblogs.com/immortalBlog/p/12501507.html
conseillé
Classement