.NET Core Linux: Many child processes I didn't start #45835
-
I'm looking at one of our .NET core apps (console - hangfire job server app), running on linux on docker/kubernetes. I'm just a bit confused as to why we have so many child processes:
There are a lot of I'm looking into resource usage of this app here, so it's a bit confusing. Is this some kind of way multitasking is done on .net core linux?I may want to do some profiling - which process do I even attach to? Just PID 535? Is it something we've done?We have no Process.Start in our codebase, so it may be a 3rd party lib doing this. They are all trying to run our app with default args? Is there a different way to change the entrypoint I'm not seeing here? Any advice to find the culprit? I've thought of changing the process security to deny process spawning but I don't know how to do this on linux.
Are these forked processes maybe? If it helps the app is running hangfire with a redis storage provider. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
These are just individual threads within the same process. In htop if you press F2 you can hide them, color them differently, and show their custom thread names. (IE: For example, here's what it looks like if you enable coloring them differently and showing thread names: The reason things look the way they do by default is the line between a thread and a process is slightly blurrier on Linux. (This elaborates a bit more) |
Beta Was this translation helpful? Give feedback.
These are just individual threads within the same process. In htop if you press F2 you can hide them, color them differently, and show their custom thread names. (IE:
Thread.Name
)For example, here's what it looks like if you enable coloring them differently and showing thread names:
The reason things look the way they do by default is the line between a thread and a process is slightly blurrier on Linux. (This elaborates a bit more)