diff options
author | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2017-04-08 19:02:22 +0900 |
---|---|---|
committer | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2017-04-08 19:02:22 +0900 |
commit | 347d01c65e3d606d7dc61908aa5245efdd845e36 (patch) | |
tree | dfcbba9bfc025db85886575b868481bad3904c2d /buildstream/source.py | |
parent | 8582534b5477d86128ba5c22086c76bb9b968932 (diff) | |
download | buildstream-347d01c65e3d606d7dc61908aa5245efdd845e36.tar.gz |
_signals.py: More reliable suspend/resume context manager
It seems that resuming tasks was not happening consistently, sometimes
resuming would fail to resume.
Changed the code to stop handling SIGCONT completely as to not add
any interference in the main child task's SIGCONT handling, instead
perform SIGCONT activities in the SIGTSTP handler, directly after
issuing SIGSTOP to self, where we implicitly know that if that code
is executed, it's because we have now resumed.
It's impossible to tell how correct this change is, however after
much testing this appears to be entirely reliable, whilst the previous
approach continues to be demonstrably unreliable.
Diffstat (limited to 'buildstream/source.py')
0 files changed, 0 insertions, 0 deletions