[Process] Fix CS
[Process] Add failing test for #8739
[Process] Fix #8739
[Process] Avoid zombie process in case of unit tests failure
[Process] Add more precision to Process::stop timeout
merged branch romainneutron/process-callbacks-2.2 (PR #8741)

This PR was merged into the 2.2 branch.

Discussion
----------

[Process][2.2] Fix #8739

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #8739
| License       | MIT

This adds a fix to #8739. Whenever a call is done to to any non-blocking methods (`Process::isRunning`, `Process::isStopped`, `Process::isTerminated`, `Process::getStatus`, `Process::getPid`...), buffers are read, and callback executed.

Such code will now work :

```
$process->start(function ($type, $data) {
    echo $data;
});

while ($process->isRunning()) {
    // some stuff
    // callback is executed
}
```

Commits
-------

fa769a2 [Process] Add more precision to Process::stop timeout
57d4159 [Process] Avoid zombie process in case of unit tests failure
3ef517b [Process] Fix #8739
7716fb2 [Process] Add failing test for #8739
bff6f3c [Process] Fix CS