On 29 March 2018 at 09:49, Chris Angelico <ros...@gmail.com> wrote:
> On Thu, Mar 29, 2018 at 7:18 PM, Nathaniel Smith <n...@pobox.com> wrote:
>> Another example is the multiprocessing module: it's very safe to
>> assume that the parent and the child are using the same interpreter
>> :-). There's no fundamental reason you shouldn't be able to send
>> bytecode between them.
>
> You put a smiley on it, but is this actually guaranteed on all
> platforms? On Unix-like systems, presumably it's using fork() and thus
> will actually use the exact same binary, but what about on Windows,
> where a new process has to be spawned? Can you say "spawn me another
> of this exact binary blob", or do you have to identify it by a file
> name?
>
> It wouldn't be a problem for the nonportable mode to toss out an
> exception in weird cases like this, but it _would_ be a problem if
> that causes a segfault or something.

If you're embedding, you need multiprocessing.set_executable()
(https://docs.python.org/3.6/library/multiprocessing.html#multiprocessing.set_executable),
so in that case you definitely *won't* have the same binary...

Paul
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to