1 # -*- encoding: binary -*-
4 # this class is used for most synchronous concurrency models
5 class Rainbows::Client < Kgio::Socket
7 Time.now + Rainbows.keepalive_timeout
10 def kgio_wait_readable
11 IO.select([self], nil, nil, Rainbows.keepalive_timeout)
14 # used for reading headers (respecting keepalive_timeout)
18 case rv = kgio_tryread(16384, buf)
20 return if expire && expire < Time.now
21 expire ||= read_expire
29 include Rainbows::ProcessClient