http://qs321.pair.com?node_id=1022790


in reply to Re^3: Threads and signals in Windows
in thread Threads and signals in Windows

From Re^5: pipe fork win32 about the documentation of fork in Windows.

its actual behavior isn't well-enough (at all?) documented to allow for a set of rules to be written down about what will and won't work.

Replies are listed 'Best First'.
Re^5: Threads and signals in Windows
by Anonymous Monk on Mar 11, 2013 at 20:09 UTC

    From Re^5: pipe fork win32 about the documentation of fork in Windows.

    So you're just taking BrowserUk's word for it?

    Did you read perlport#fork yourself? It says

    Emulated using multiple interpreters. See perlfork. (Win32)
    and the perlfork has a whole page full of caveats and stuff -- kind of like rules regarding portability that kinda say "this ain't like unix fork , don't get fancy"
      So you're just taking BrowserUk's word for it?

      No, but I do not have enough knowledge in the Windows operating system and the Perl implementation on it to make such a statement!

      Did you read perlport#fork yourself?

      Yes!

      In this patch http://perl5.git.perl.org/perl.git/commitdiff/bee96257ad6e12bd0adacaeb3b40c32c5776b068?hp=2fbb14a0b50722f55cd2863203a1ea1a3c2133f7 I succeed to add some information on “Portability issues” to perlfunc. In perlfunc there is now very short information on some security issues, a link to perlport and in perlport a link to perlfork

      I have later realized that this is not enough. For me it is very difficult to interpret the consequence of the information in perlfork.

      I would like, already in perlfunc, to have more straightforward statements like:

      “do not attempt to use fork & the windows signals emulation to try to port *nix idioms to windows; because you will be sadly let down”
      or
      “If you want to write cross-platform code, you shouldn't use signals, full stop.”
      (The statements should of course be polished. I hope somebody with English as native language could help out.)