It would be helpful to ID such threads, however I don’t think Linux facilities can ID threads in C# context.
If you want to try, you can ps for mono-sgen for Duplicati. Look in /proc by PID at all its task stacks e.g.
under /proc/14837/task
do head */stack
. For me, I see them, but unsurprisingly get no C# context.
Ideal is probably a debugger, but I have none for Linux and am not sure which one could check threads.
I’m not seeing my threads on Windows heading way high. I backup to Google Drive. What is this using?
The mono system does have a last-resort thread dump which actually looks pretty nice, but says it may crash the program, so probably best to have it running as TrayIcon, launched from a shell, and paused.
After getting the stack traces, quit from TrayIcon menu (assuming it still works, and it did when I tried it).
It is possible to obtain a stack trace of all the active threads in Mono by sending the
QUIT signal to Mono, you can do this from the command line, like this:
kill -QUIT pid
Where pid is the Process ID of the Mono process you want to examine. The process will
continue running afterwards, but its state is not guaranteed.
Important: this is a last-resort mechanism for debugging applications and should not be
used to monitor or probe a production application. The integrity of the runtime after
sending this signal is not guaranteed and the application might crash or terminate at any
given point afterwards.