Commit 738ca29f authored by Jason Madden's avatar Jason Madden

Fix benchmark, and make AsyncResult use the provided API.

parent 1f8d34c4
#!/bin/sh #!/bin/sh
set -e -x set -e -x
PYTHON=${PYTHON:=python} PYTHON=${PYTHON:=python}
$PYTHON -mperf timeit -s'from gevent.lock import Semaphore; s = Semaphore()' 's.release()' $PYTHON -mpyperf timeit -s'from gevent.lock import Semaphore; s = Semaphore()' 's.release()'
$PYTHON -mperf timeit -s'from gevent.lock import Semaphore; from gevent import spawn_raw; s = Semaphore(0)' 'spawn_raw(s.release); s.acquire()' $PYTHON -mpyperf timeit -s'from gevent.lock import Semaphore; from gevent import spawn_raw; s = Semaphore(0)' 'spawn_raw(s.release); s.acquire()'
$PYTHON -mperf timeit -s'from gevent.lock import Semaphore; from gevent import spawn_raw; s = Semaphore(0)' 'spawn_raw(s.release); spawn_raw(s.release); spawn_raw(s.release); spawn_raw(s.release); s.acquire(); s.acquire(); s.acquire(); s.acquire()' $PYTHON -mpyperf timeit -s'from gevent.lock import Semaphore; from gevent import spawn_raw; s = Semaphore(0)' 'spawn_raw(s.release); spawn_raw(s.release); spawn_raw(s.release); spawn_raw(s.release); s.acquire(); s.acquire(); s.acquire(); s.acquire()'
...@@ -7,7 +7,6 @@ from __future__ import print_function ...@@ -7,7 +7,6 @@ from __future__ import print_function
from gevent._util import _NONE from gevent._util import _NONE
from gevent._compat import reraise from gevent._compat import reraise
from gevent._tblib import dump_traceback, load_traceback from gevent._tblib import dump_traceback, load_traceback
from gevent._hub_local import get_hub_noargs as get_hub
from gevent.timeout import Timeout from gevent.timeout import Timeout
...@@ -327,8 +326,7 @@ class AsyncResult(AbstractLinkable): # pylint:disable=undefined-variable ...@@ -327,8 +326,7 @@ class AsyncResult(AbstractLinkable): # pylint:disable=undefined-variable
# Not ready and not blocking, so immediately timeout # Not ready and not blocking, so immediately timeout
raise Timeout() raise Timeout()
if self.hub is None: # pylint:disable=access-member-before-definition self._capture_hub(True)
self.hub = get_hub() # pylint:disable=attribute-defined-outside-init
# Wait, raising a timeout that elapses # Wait, raising a timeout that elapses
self._wait_core(timeout, ()) self._wait_core(timeout, ())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment