diff options
author | Sebastian Thiel <byronimo@gmail.com> | 2010-06-09 11:31:24 +0200 |
---|---|---|
committer | Sebastian Thiel <byronimo@gmail.com> | 2010-06-09 11:31:24 +0200 |
commit | 2054561da184955c4be4a92f0b4fa5c5c1c01350 (patch) | |
tree | 5259308a9c868dce2ecda88d126a9fcce9f0fb4a /lib/git/async/util.py | |
parent | f2c8d26d3b25b864ad48e6de018757266b59f708 (diff) | |
download | gitpython-2054561da184955c4be4a92f0b4fa5c5c1c01350.tar.gz |
HSCondition: using a deck to store waiters, for further speedup
Diffstat (limited to 'lib/git/async/util.py')
-rw-r--r-- | lib/git/async/util.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/git/async/util.py b/lib/git/async/util.py index b5e1a0c0..2c18a1b9 100644 --- a/lib/git/async/util.py +++ b/lib/git/async/util.py @@ -79,7 +79,7 @@ class HSCondition(object): if lock is None: lock = Lock() self._lock = lock - self._waiters = list() + self._waiters = deque() def release(self): self._lock.release() @@ -146,7 +146,7 @@ class HSCondition(object): # so here we assume this is thead-safe ! It wouldn't be in any other # language, but python it is. try: - self._waiters.pop(0).release() + self._waiters.popleft().release() except IndexError: pass else: @@ -156,7 +156,7 @@ class HSCondition(object): # to do that in a thread-safe fashion try: for i in range(min(n, len(self._waiters))): - self._waiters.pop(0).release() + self._waiters.popleft().release() # END for each waiter to resume finally: self.release() |