Skip to Main Content
Expert Python Programming - Third Edition
book

Expert Python Programming - Third Edition

by Michał Jaworski, Tarek Ziadé, Cody Jackson
April 2019
Intermediate to advanced content levelIntermediate to advanced
646 pages
16h 48m
English
Packt Publishing
Content preview from Expert Python Programming - Third Edition

The built-in multiprocessing module

multiprocessing provides a portable way to work with processes as if they were threads.

This module contains a Process class that is very similar to the Thread class, and can be used on any platform, as follows:

from multiprocessing import Process 
import os 
 
 
def work(identifier): 
    print( 
        'hey, i am a process {}, pid: {}' 
        ''.format(identifier, os.getpid()) 
    ) 
 
 
def main(): 
    processes = [ 
        Process(target=work, args=(number,)) 
        for number in range(5) 
    ] 
    for process in processes: 
        process.start() 
     
    while processes: 
        processes.pop().join() 
 
 
if __name__ == "__main__": 
    main()

The preceding script, when executed, gives the following result:

$ python3 processing.py hey, i am a process 1, pid: 9196 hey, i am a process 0, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Advanced Python Programming - Second Edition

Advanced Python Programming - Second Edition

Quan Nguyen
Expert Python Programming – Fourth Edition - Fourth Edition

Expert Python Programming – Fourth Edition - Fourth Edition

Michał Jaworski, Tarek Ziade, Tarek Ziadé

Publisher Resources

ISBN: 9781789808896Other