Hello, I have noticed that in mono/mcs/class/Mono.Posix/Mono.Unix.Native/Syscall.cs <https://github.com/mono/mono/blob/master/mcs/class/Mono.Posix/Mono.Unix.Native/Syscall.cs> fork() is #if'd out with the message "*DO NOT directly call fork(2); it bypasses essential shutdown code. Use System.Diagnostics.Process instead*".
What happens specifically? fork() starts a process, it does not shut anything down? fork() should just work, does it not (effectively (copy on write)) copy the entire VM which then each shuts down independently? fork() does work in Python on Unix (multiprocessing module). fork() is powerful, it supports using processes as an alternative to threads. One can not test for a one in a million race condition. System.Diagnostics.Process only replaces fork() then exec(). I wish to use fork() to support replicated processes, starting with a complete copy of the application's state greatly simplifies this. Thanks, Gene Thomas. +64 21 436384 <+64%2021%20436%20384> g...@genethomas.com
_______________________________________________ Mono-devel-list mailing list Mono-devel-list@lists.dot.net http://lists.dot.net/mailman/listinfo/mono-devel-list