Pass data to a subprocess

A

andrea crotti

I'm having fun in the world of multiprocessing, and I would like some
suggestions.

For example suppose I want to create many processes and pass them some
data to process (also why they are running).

I found many nice things (Pipe, Manager and so on), but actually even
this seems to work:


class MyProcess(Process):
def __init__(self):
Process.__init__(self)
self.ls = []

def __str__(self):
return str(self.ls)

def add(self, ls):
self.ls += ls

def run(self):
print("running the process in another subprocess")


def procs():
mp = MyProcess()
mp.start()
# with the join we are actually waiting for the end of the running time
mp.join()
mp.add([1,2,3])
mp.add([2,3,4])
print(mp)


Which is a bit surprising, because it means that I can pass data to an
object that is running on another process.
Is it because of some magic in the background and can I rely on that or
simply I didn't understand how it works?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,575
Members
45,053
Latest member
billing-software

Latest Threads

Top