1. 08 Feb, 2016 2 commits
  2. 03 Feb, 2016 1 commit
  3. 02 Feb, 2016 1 commit
  4. 27 Jan, 2016 2 commits
  5. 24 Jan, 2016 12 commits
  6. 04 Jan, 2016 8 commits
  7. 03 Jan, 2016 2 commits
  8. 30 Dec, 2015 3 commits
  9. 21 Dec, 2015 4 commits
  10. 18 Dec, 2015 3 commits
  11. 17 Dec, 2015 2 commits
    • Jason Madden's avatar
    • Jason Madden's avatar
      Fix #704 by going back to pure-python version of Semaphore on PyPy. · 3598dc82
      Jason Madden authored
      The main stated reason for untraceable locks was a bug in Python 2.5,
      fixed in all recent versions, so that shouldn't be a concern.
      
      The semaphore takes some careful lock management to come close to
      duplicating the thread-safety inherent in Cython's compiled methods.
      
      'pypy -m timeit -s "import g.l.Semaphore; s=Semaphore()"' 's.acquire();s.releas()':
      
      With Cython compiled semaphore: 5usec
      With pure-python sempahore: 0.004usec
      With pure-python-but-locked semaphore: 0.178usec
      Cython on CPython: 0.141usec
      
      Total test runtime is unchanged.
      3598dc82