ruby 클라이언트 소켓 생성 및 connect require 'socket' tcp_socket = Socket . new ( Socket :: AF_INET , Socket :: SOCK_STREAM , 0 ) tcp_socket. setsockopt ( Socket :: IPPROTO_TCP , Socket :: TCP_NODELAY , true ) sockaddr_server = Socket . sockaddr_in ( 9000 , "127.0.0.1" ) begin tcp_socket. connect (sockaddr_server) end 윈도우 mkxp-z 3.1.3 버전에서 Socket#connect_nonblock 을 쓰려고 시도했으나, 지원하지 않는 메서드라고 에러를 띄웠다. 이러면 connect 시에는 블록되는 상황을 마주할 수밖에 없다. 매우 아쉬운 부분이다. ruby 논블록 send begin tcp_socket. write_nonblock ( "안녕 client #{ $ count } " ) rescue IO :: WaitReadable => e # the socket is marked as nonblocking and the connection cannot be completed immediately print ( "WaitReadable" ) end 1. plain (15 bytes) tcp_socket. write_nonblock ( "안녕 client #{ $ count } " ) 0000 98 83 89 7b 5f 29 34 7d f6 a0 02 d0 08 00 45 00 ...{_)4}......E. 0010 00 37 aa a3 40 00 80 06 18 5d c0 a8 db 01 c0 a8 .7..@....]...... ...