Skip to content

Instantly share code, notes, and snippets.

@ryoqun
Created March 28, 2013 12:32
Show Gist options
  • Save ryoqun/5262769 to your computer and use it in GitHub Desktop.
Save ryoqun/5262769 to your computer and use it in GitHub Desktop.
TCPSocket.open with a running server
- silently ignores 'nil' as the third parameter
- connects to a listening server with host and port
- connects to a server when passed local_host argument
- connects to a server when passed local_host and local_port arguments
- has an address once it has connected to a listening server
TCPSocket partial closability
- if the write end is closed then the other side can read past EOF without blocking
- closing the write end ensures that the other side can read until EOF
TCPSocket#recv_nonblock
- returns a String read from the socketrbx: vm/builtin/variable_scope.cpp:143: rubinius::Object* rubinius::VariableScope::get_local(int): Assertion `!isolated_' failed.
---------------------------------------------
CRASH: A fatal error has occurred.
Backtrace:
bin/rbx[0x5d8770]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0)[0x7fd46d707cb0]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35)[0x7fd46ce5d425]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x17b)[0x7fd46ce60b8b]
/lib/x86_64-linux-gnu/libc.so.6(+0x2f0ee)[0x7fd46ce560ee]
/lib/x86_64-linux-gnu/libc.so.6(+0x2f192)[0x7fd46ce56192]
bin/rbx[0x75b887]
bin/rbx(_ZN8rubinius11MachineCode11interpreterEPNS_5StateEPS0_PNS_20InterpreterCallFrameE+0x405a)[0x602f7a]
bin/rbx(_ZN8rubinius16BlockEnvironment19execute_interpreterEPNS_5StateEPNS_9CallFrameEPS0_RNS_9ArgumentsERNS_15BlockInvocationE+0x227)[0x6de917]
bin/rbx(_ZN8rubinius16BlockEnvironment6invokeEPNS_5StateEPNS_9CallFrameEPS0_RNS_9ArgumentsERNS_15BlockInvocationE+0x75)[0x6df085]
bin/rbx(_ZN8rubinius16BlockEnvironment4callEPNS_5StateEPNS_9CallFrameERNS_9ArgumentsEi+0x44)[0x6df184]
bin/rbx(_ZN8rubinius4Proc4callEPNS_5StateEPNS_9CallFrameERNS_9ArgumentsE+0x2bc)[0x72e3ec]
bin/rbx(_ZN8rubinius10Primitives9proc_callEPNS_5StateEPNS_9CallFrameEPNS_10ExecutableEPNS_6ModuleERNS_9ArgumentsE+0xc2)[0x66f3f2]
bin/rbx(rbx_splat_send_private+0x83)[0x7d4b13]
[0x7fd46e3a96e5]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment