Python child process in while True loop blocks parent

Jen Kris jenkris at tutanota.com
Mon Dec 6 12:09:34 EST 2021


I can't find any support for your comment that "Fork creates a new
process and therefore also a new thread."  From the Linux man pages https://www.man7.org/linux/man-pages/man2/fork.2.html, "The child process is created with a single thread—the one that called fork()." 
I have a one-core one-thread instance at Digital Ocean available running Ubuntu 18.04.  I can fork and create a new process on it, but it doesn't create a new thread because it doesn't have one available. 
You may also want to see "Forking vs Threading" (https://www.geekride.com/fork-forking-vs-threading-thread-linux-kernel), "Fork vs Thread" (https://medium.com/obscure-system/fork-vs-thread-38e09ec099e2), and "Linux process and thread" (https://zliu.org/post/linux-process-and-thread) ("This means that to create a normal process fork() is used that further calls clone() with appropriate arguments while to create a thread or LWP, a function from pthread library calls clone() with relvant flags. So, the main difference is generated by using different flags that can be passed to clone() funciton(to be exact, it is a system call"). 
You may be confused by the fact that threads are called light-weight processes. 
Or maybe I'm confused :)
If you have other information, please let me know.  Thanks. 
Jen
Dec 5, 2021, 18:08 by hjp-python at hjp.at:
> On 2021年12月06日 00:51:13 +0100, Jen Kris via Python-list wrote:
>>> The C program creates two threads (using pthreads), one for itself and
>> one for the child process.  On creation, the second pthread is pointed
>> to a C program that calls fork-execv to run the Python program.  That
>> way Python runs on a separate thread. 
>>>> I think you have the relationship between processes and threads
> backwards. A process consists of one or more threads. Fork creates a new
> process and therefore also a new thread.
>> hp
>> -- 
> _ | Peter J. Holzer | Story must make more sense than reality.
> |_|_) | |
> | | | hjp at hjp.at | -- Charles Stross, "Creative writing
> __/ | http://www.hjp.at/ | challenge!"
>


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /