I gather that using multiprocessing causes new instances of the program to be initialized. e.g. the following code would cause 7 instances to be initialized:
pool = mp.Pool(processes=7)
pool.apply_async(process, args=(properties,)) for properties in properties_list]
My question though is what is actually getting loaded in the new instance? For example, if i have file_a.py
, which calls a function from file_b.py
, and the function in file_b.py
uses multiprocessing, is it just file_b.py
that gets re-loaded, or file_a.py
and file_b.py
?