diff options
author | Allan Saddi <allan@saddi.com> | 2009-08-17 12:42:43 -0700 |
---|---|---|
committer | Allan Saddi <allan@saddi.com> | 2009-08-17 12:42:43 -0700 |
commit | 90a38f2d6d156600bf73314986c5ff7d0960095d (patch) | |
tree | 8045a4629febbf62a486aa387f6d1717b96d715a | |
parent | 012f34a4dad6589d8b43f234e07d508fb80ef1a2 (diff) | |
download | flup-90a38f2d6d156600bf73314986c5ff7d0960095d.tar.gz |
Restore check of the absolute number of children against maxSpare and
document rationale.
-rw-r--r-- | flup/server/preforkserver.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/flup/server/preforkserver.py b/flup/server/preforkserver.py index b7b2ff1..4c50e8c 100644 --- a/flup/server/preforkserver.py +++ b/flup/server/preforkserver.py @@ -126,8 +126,12 @@ class PreforkServer(object): # Main loop. while self._keepGoing: - # Maintain minimum number of children. - while len(self._children) < self._minSpare: + # Maintain minimum number of children. Note that we are checking + # the absolute number of children, not the number of "available" + # children. We explicitly test against _maxSpare to maintain + # an *optimistic* absolute minimum. The number of children will + # always be in the range [_maxSpare, _maxChildren]. + while len(self._children) < self._maxSpare: if not self._spawnChild(sock): break # Wait on any socket activity from live children. |