Created
July 15, 2010 10:38
-
-
Save wandernauta/476791 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Program received signal SIGSEGV, Segmentation fault. | |
[Switching to Thread 0xb737db70 (LWP 3179)] | |
0x0805ee34 in GC_core_malloc () | |
(gdb) where | |
#0 0x0805ee34 in GC_core_malloc () | |
#1 0x08053e78 in zeromq__Message_new_withData (data=0x805fecd, size=7, | |
dealloc=0, hint=0x0) at /usr/lib/ooc/ooc-zeromq/zeromq.ooc:65 | |
#2 0x0804a306 in messenger__client (args=0x80b3fc0, ctx=0x80d4890) | |
at ./messenger.ooc:56 | |
#3 0x0804a342 in messenger____messenger_closure25 (args=0x80b3fc0, | |
ctx=0x80d4890) at ./messenger.ooc:10 | |
#4 0x08113014 in ?? () | |
#5 0xb7f3896e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 | |
#6 0xb7e86a4e in clone () from /lib/tls/i686/cmov/libc.so.6 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use zeromq | |
import zeromq | |
import structs/ArrayList | |
import threading/Thread | |
import os/Time | |
main: func (args: ArrayList<String>) { | |
ctx := Context new(0) | |
Thread new(|| server(ctx)) start() | |
Time sleepSec(1) | |
Thread new(|| client(args, ctx)) start().wait() | |
} | |
server: func(ctx: Context) { | |
// Create an endpoint for client applications to connect to. | |
// We are using an XREP socket so that processing of one request | |
s := Socket new(ctx,SocketType sub) | |
// won't block other requests. | |
// "Made server socket" println() | |
s bind("inproc://pipe") | |
// "Bound server socket" println() | |
s setOption(SocketOption subscribe, "", 0) | |
// "Subscribe option set on server socket" println() | |
while (true) { | |
// "Receiving server" println() | |
// Get a request from the dispatcher. | |
request := s recv() | |
// "Received server" println() | |
" Got %s" printfln(request data()) | |
} | |
} | |
client: func(args: ArrayList<String>, ctx: Context) { | |
// The only application thread is the main thread. | |
// One I/O thread in the thread pool will do. | |
// This client is a requester | |
// Connect to the server | |
addr := "inproc://pipe" | |
"Connecting to %s" printfln(addr) | |
s := Socket new(ctx, SocketType pub). connect(addr) | |
"Socket made (client)" println() | |
while (true) { | |
//scan the user's message | |
message := "Hello!" | |
// Send the request. No point in filling the content in as server | |
// is a dummy and won't use it anyway. | |
s send(Message new(message, message length() + 1, null, null)) | |
// Get the reply | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Connecting to inproc://pipe | |
Socket made (client) | |
Got | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Got Hello! | |
Segmentation fault |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment