◐ Shell
clean mode source ↗

Message 333656 - Python tracker

> FYI, I'm researching how to use vfork(), focusing on Linux, but I'll need more time to study the current state of affairs of libcs.

Using os.posix_spawn() in pure Python is a first step forward :-)


> (...) There are also additional subtle issues related to signal handling (and pthread cancellation in particular) which I need to study.

That's why vfork was an opt-in option in the first glibc implementation, whereas glibc is now able to detect when using vfork is safe or not.


> If I find vfork()-like approach feasible, I'll open a separate issue. The bonus of this approach is that it doesn't depend on a particular libc, so both glibc (including older versions) and musl could be supported.

I like it, but it seems to be *very* tricky to implement!