Mark UV.run as blocking to release GIL. #2

Merged
merged 1 commit into from Aug 14, 2012

Projects

None yet

3 participants

@mzp
Contributor
mzp commented Aug 14, 2012

Current UV.run does not release GIL.
So,we could not run multiple loop.

For example, when execute following code, ruby says segmentation fault.

require 'uvrb'
Thread.start { loop = UV::Loop.new; loop.timer.start(1,1){|_|}; loop.run }
loop = UV::Loop.default
loop.timer.start(1,1){|_|}
loop.run

See also 'GIL' section at https://github.com/ffi/ffi/wiki/Callbacks

This pull request fails (merged 381301e into 92e950d).

@avalanche123 avalanche123 merged commit 2ca5582 into avalanche123:master Aug 14, 2012

1 check failed

default The Travis build failed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment