Commit Graph

114 Commits

Author SHA1 Message Date
Marc Siegel 4518e6fdad Fix ConditionVariable#signal to only post if semaphore has waiters
This fixes a bug where calls to #signal would end up "over-posting"
the semaphore, causing subsequent waits to return immediately until
the semaphore value is back down to zero.
2013-12-27 15:15:07 -05:00
pmahoney dddf0be4ef Merge pull request #6 from ms-ati/allow-mutex-lock-from-different-thread
Fix Mutex to allow lock from different Ruby (green) thread in process
2013-12-27 09:18:39 -08:00
Marc Siegel aeadb74ef6 Fix Mutex to allow lock from different Ruby (green) thread in process 2013-12-27 10:46:50 -05:00
Patrick Mahoney 3e4fa34694 Version bump to 0.1.9a 2013-12-26 22:39:44 -06:00
Patrick Mahoney 77ba16460e Version bump to 0.1.8 2013-12-26 22:39:33 -06:00
pmahoney c663e81774 Merge pull request #5 from ms-ati/allow-ruby-threads-to-continue
Fix: Allow ruby green threads to continue while waiting on semaphore
2013-12-26 20:37:26 -08:00
Marc Siegel 90a9f37da4 Disable test on 1.8.7, since workaround is to allow blocking on that version 2013-12-26 13:51:03 -05:00
Marc Siegel d2f8af03eb Workaround apparent bug in 1.8.7/REE: block all during sem_timedwait 2013-12-26 13:48:29 -05:00
Marc Siegel d3d51fef91 Moved tests to just semaphore, and fixed thread joining 2013-12-26 13:28:40 -05:00
Marc Siegel e2e70591a1 On posix, allow ruby threads to continue during wait / try_wait 2013-12-26 12:47:09 -05:00
Marc Siegel 50c096d84c On mach, allow other ruby threads to continue during semaphore try_wait 2013-12-26 12:45:04 -05:00
Marc Siegel d1644104c8 On mach, allow other ruby green threads to continue during semaphore wait 2013-12-26 12:27:36 -05:00
Patrick Mahoney 4906f5acf5 Add ruby 2.0.0 to travis config. 2013-02-21 13:09:08 -06:00
Patrick Mahoney 5abcdb378c Add travis config. 2013-02-21 12:59:04 -06:00
Patrick Mahoney 862b1b3b08 Version bump to 0.1.8a 2013-02-19 13:58:10 -06:00
Patrick Mahoney e106d38b86 Version bump to 0.1.7 2013-02-19 13:58:02 -06:00
Patrick Mahoney a93775fe24 Don't include compiled extension in gem; configure extconf.rb to compile and install into the correct location. Fixes #4. 2013-02-19 13:56:53 -06:00
Patrick Mahoney 5aba20cdf7 Partial MonitorMixin implementation. 2012-03-29 23:00:52 -05:00
Patrick Mahoney 80284301a7 Use semaphore#synchronize convenience method internally. 2012-03-29 22:34:16 -05:00
Patrick Mahoney 1eff930480 Initial attempt at Monitor class. 2012-03-29 22:33:03 -05:00
Patrick Mahoney d8eba3cb25 Add target dir to .gitignore. 2012-03-24 13:35:08 -05:00
Patrick Mahoney 0dc83a72aa Add rake task to generate flog report. 2012-03-24 13:27:42 -05:00
Patrick Mahoney e6ff2ba8d7 Sort dev dependencies list in gemspec. 2012-03-24 13:07:00 -05:00
Patrick Mahoney b6a6c2f241 Rdoc formatting. 2012-03-04 10:29:43 -06:00
Patrick Mahoney b7d26ebd12 Rdoc formatting. 2012-03-04 10:28:23 -06:00
Patrick Mahoney 884a1fa6c3 Update README for new Mach stuff. 2012-03-04 10:26:58 -06:00
Patrick Mahoney a0b99f840f Add dev dependency on ci_reporter for test reports. 2012-02-26 13:28:37 -06:00
Patrick Mahoney d012a11237 Add LockBehavior to semaphore spec. 2012-02-23 21:37:19 -06:00
Patrick Mahoney 5dc3c7299e Move common lock test behavior out of mutex spec into module. 2012-02-23 21:33:38 -06:00
Patrick Mahoney 2af2cdc852 Version bump to 0.1.7a 2012-02-09 08:15:03 -06:00
Patrick Mahoney d0448f75eb Version bump to 0.1.6 2012-02-09 08:14:56 -06:00
Patrick Mahoney 662a86f2ab Add release management rake tasks. 2012-02-09 08:14:47 -06:00
Patrick Mahoney 1a9fd328d4 Version bump to 0.1.6a 2012-02-09 08:14:03 -06:00
Patrick Mahoney 04af027faa Version bump to 0.1.5 2012-02-09 08:13:59 -06:00
Patrick Mahoney 92f5348646 Version bump to 0.1.4 2012-02-09 08:12:51 -06:00
Patrick Mahoney acee406bac Version bump to 0.1.3 2012-02-09 08:10:34 -06:00
Patrick Mahoney a74b6b1a74 Version bump to 0.1.3a 2012-02-09 08:09:04 -06:00
Patrick Mahoney 4a098765a6 Version bump to 0.1.2 2012-02-09 08:09:03 -06:00
Patrick Mahoney 0b188e09ca Version bump to 0.1.2a 2012-02-09 08:05:28 -06:00
Patrick Mahoney e55fa8864a Version bump to 0.1.1 2012-02-09 08:05:27 -06:00
Patrick Mahoney da42ac4875 Refactor Mach FFI wrapper; get unit tests working again. 2012-02-08 21:30:18 -06:00
Patrick Mahoney d373ed5996 Revert debugging change to unit test. 2012-02-08 21:29:37 -06:00
Patrick Mahoney 359d44b6f3 Use original fork in mach unit test rather than possibly overridden fork. 2012-02-08 21:29:03 -06:00
Patrick Mahoney 45e6425311 Be more sleepy in test to ensure failure when not locking. 2012-02-08 21:12:06 -06:00
Patrick Mahoney 15fe2e5057 Refactor class hierarchy, implementation selection details. 2012-02-07 23:06:17 -06:00
Patrick Mahoney 64b746a98c Use gem built-in method to load gemspec file. 2012-02-07 20:46:21 -06:00
Patrick Mahoney 890d7e4e8b Adjust test inclusion based on FFI platform to only run mach tests on mac. 2012-02-07 20:44:53 -06:00
Patrick Mahoney c2c19e0268 Bump version to 0.1.0 for next development cycle. 2012-02-01 21:48:26 -06:00
Patrick Mahoney e7af5995e5 Release version 0.1.0. 2012-02-01 21:46:51 -06:00
Patrick Mahoney 0aab64eaff Skip Semaphore#value test on Mac OS X where it is unsupported. 2012-02-01 21:45:54 -06:00