diff --git a/src/Process/Root.php b/src/Process/Root.php index 41d65026..c5f08663 100644 --- a/src/Process/Root.php +++ b/src/Process/Root.php @@ -43,7 +43,9 @@ protected function pollSingletonProcesses() : Root if ($semaphoreResource->testLock()) { try { $process = $this->_getProcessCollection()->getProcessPrototypeClone($singletonType); - $this->_getProcessPool()->addChildProcess($process); + if (!$this->_getProcessPool()->isFull()) { + $this->_getProcessPool()->addChildProcess($process); + } } catch (Forked\Exception $forkedException) { // this is fine, another execution environment will spawn this process // TODO: consider breaking here to stop attempting to spawn other singletons