Kill QProcess that was stopped and resumed Kill QProcess that was stopped and resumed unix unix

Kill QProcess that was stopped and resumed


In general, lots of things can happen when SIGSTOP and a subsequent SIGCONT are sent to a process. Related processes (child or parent processes for instance) are not co-stopped when stopping a process. This may lead to weird anomalies like the breaking of pipes or delays which lead to timeouts. So in general, these signals aren't well supported. Only for very simple architectures (no forking, no child processes, etc.) they should work. Also, since a process can react upon SIGCONT, any framework (like QT) might do so and re-initialize some of its facilities. This makes also sense, of course, because after being stopped, some things might have changed which otherwise might have been noticed at the time of their change.

Unfortunately, the case is so rare and encompasses so many different aspects that this is normally not completely test-covered, so bugs are rather likely, compared to other parts of the same library. I would assume that you just found an issue in the QT code or that the framework just doesn't support these signals. Do you have any documentation which states that it should?

Steps you could do now:

  • Search for an already filed bug report in the bug tracking system of the related library.
  • Create an mcve showing the issue.
  • If nothing is filed, file a bug report ;-)

But I wouldn't expect the maintainers of the libraries to react very quickly, if at all. As I said, SIGSTOP and SIGCONT often aren't supported on more complex scenarios. Their implications just are too complex.