Class | Kgio::UNIXServer |
In: |
ext/kgio/accept.c
(CVS)
|
Parent: | cUNIXServer |
Kgio::UNIXServer should be used in place of the plain UNIXServer when kgio_accept and kgio_tryaccept methods are needed.
server = Kgio::UNIXServer.new("/path/to/unix/socket") server.kgio_accept -> Kgio::Socket or nil server.kgio_accept(klass = MySocket) -> MySocket or nil server.kgio_accept(nil, flags) -> Kgio::Socket or nil
Initiates a blocking accept and returns a generic Kgio::Socket object with the kgio_addr attribute set (to the value of Kgio::LOCALHOST) on success.
On Ruby implementations using native threads, this can use a blocking accept(2) (or accept4(2)) system call to avoid thundering herds.
An optional klass argument may be specified to override the Kgio::Socket-class on a successful return value.
An optional flags argument may also be specified. flags is a bitmask that may contain any combination of:
server = Kgio::UNIXServer.new("/path/to/unix/socket") server.kgio_tryaccept -> Kgio::Socket or nil server.kgio_tryaccept(klass = MySocket) -> MySocket or nil server.kgio_tryaccept(nil, flags) -> Kgio::Socket or nil
Initiates a non-blocking accept and returns a generic Kgio::Socket object with the kgio_addr attribute set (to the value of Kgio::LOCALHOST) on success.
An optional klass argument may be specified to override the Kgio::Socket-class on a successful return value.
An optional flags argument may also be specified. flags is a bitmask that may contain any combination of: