ForNeVeR / ForNeVeR/ProcessDoctor
Support for temporary process duplicates
- Dominant language
- C#
- Stars
- 22
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
ProcessDoctor operates under condition of _eventual_ process tree consistency, which means that for a short period of time, there could be some artifacts like processes with no parent (which will come afterwards), or two processes with the same id.
That could happen if the process enumeration is not done on the process list snapshot, but on a live process list, e.g.
1. Process with `id = 42` starts.
2. We start to enumerate the processes and see the process.
3. Process with `id = 42` terminates.
4. We proceed to enumerate the processes.
5. A new process gets started, and `pid = 42` gets reused.
6. We still enumerate the processes and see the newly started process.
We should be able to properly deal with it somehow.
See `TODO[#14]` in the code.
Contributor guide
Assessment
This issue has not been assessed yet.