diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-11-19 10:19:43 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-11-19 14:44:21 -0800 |
commit | 00b854e37391322c05cc16115b245d855b4970be (patch) | |
tree | d6ad270abfa9352efbeba27c85d64de11210270a /lib/rainbows/fiber/io.rb | |
parent | 0f00424be24806791f2b253ddac6d35102842646 (diff) | |
download | rainbows-00b854e37391322c05cc16115b245d855b4970be.tar.gz |
Kgio 2.0.0 has a superior API and less likely to conflict or blow up with other applications. Unicorn 3.x requires Kgio 2.x, too.
Diffstat (limited to 'lib/rainbows/fiber/io.rb')
-rw-r--r-- | lib/rainbows/fiber/io.rb | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/rainbows/fiber/io.rb b/lib/rainbows/fiber/io.rb index a9803ee..e96f4de 100644 --- a/lib/rainbows/fiber/io.rb +++ b/lib/rainbows/fiber/io.rb @@ -53,7 +53,7 @@ class Rainbows::Fiber::IO when String buf = rv when :wait_writable - wait_writable + kgio_wait_writable end end while true else @@ -61,7 +61,7 @@ class Rainbows::Fiber::IO (rv = @to_io.write_nonblock(buf)) == buf.bytesize and return buf = byte_slice(buf, rv..-1) rescue Errno::EAGAIN - wait_writable + kgio_wait_writable end while true end end @@ -83,7 +83,7 @@ class Rainbows::Fiber::IO when :wait_readable return if expire && expire < Time.now expire ||= Time.now + G.kato - wait_readable + kgio_wait_readable else return rv end @@ -94,7 +94,7 @@ class Rainbows::Fiber::IO rescue Errno::EAGAIN return if expire && expire < Time.now expire ||= Time.now + G.kato - wait_readable + kgio_wait_readable end while true end end @@ -107,7 +107,7 @@ class Rainbows::Fiber::IO when nil raise EOFError, "end of file reached", [] when :wait_readable - wait_readable + kgio_wait_readable else return rv end @@ -116,7 +116,7 @@ class Rainbows::Fiber::IO begin return @to_io.read_nonblock(length, buf) rescue Errno::EAGAIN - wait_readable + kgio_wait_readable end while true end end @@ -141,7 +141,9 @@ end require 'rainbows/fiber/io/methods' require 'rainbows/fiber/io/compat' Rainbows::Client.__send__(:include, Rainbows::Fiber::IO::Methods) -Rainbows::Fiber::IO.__send__(:include, Rainbows::Fiber::IO::Compat) -Rainbows::Fiber::IO.__send__(:include, Rainbows::Fiber::IO::Methods) -Kgio.wait_readable = :wait_readable -Kgio.wait_writable = :wait_writable +class Rainbows::Fiber::IO + include Rainbows::Fiber::IO::Compat + include Rainbows::Fiber::IO::Methods + alias_method :wait_readable, :kgio_wait_readable + alias_method :wait_writable, :kgio_wait_writable +end |