[Python-Dev] bpo-34837: Multiprocessing.Pool API Extension (original) (raw)

[Python-Dev] bpo-34837: Multiprocessing.Pool API Extension - Pass Data to Workers w/o Globals

Antoine Pitrou solipsis at pitrou.net
Sat Sep 29 08:17:59 EDT 2018


On Sat, 29 Sep 2018 08:13:19 -0400 Sean Harrington <seanharr11 at gmail.com> wrote:

> > Hmm... We might have a disagreement on the target audience of the > multiprocessing module. multiprocessing isn't very high-level, I would > expect it to be used by experienced programmers who know how to mutate > a global variable from a lexical scope. >

>>> It is one thing to MUTATE a global from a lexical scope. No gripes there. The specific concept I'm referencing here, is "DECLARING a global variable, from within a lexical scope". This is not as a intuitive for most programmers.

Well, you don't have to. You can bind it to None in the top-level scope and then mutate it from the lexical scope:

my_resource = None

def do_work(): global my_resource my_resource = ...

Regards

Antoine.



More information about the Python-Dev mailing list