Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Socket*[] socketList;
- string sRecv( Socket* socket)
- {
- ubyte[256] buffer;
- immutable size = socket.receive(buffer);
- import std.algorithm: min;
- return buffer[0 .. min(size,256)].idup.asString();
- }
- void startServer( string servername )
- {
- auto pid = spawnProcess(["/home/erdem/eclipse-workspace/WebSocketDenemesi/websocketdenemesi", servername]);
- auto requester = new Socket(SocketType.req);
- auto allName = "ipc:///tmp/" ~ servername;
- requester.connect(allName);
- socketList ~= requester;
- }
- void main() {
- startServer("btcethtrade");
- startServer("btciotadepth");
- startServer("btciotatrade");
- for (int requestNbr = 0; requestNbr != 10; ++requestNbr) {
- foreach ( requester; socketList)
- {
- requester.send("Hello");
- }
- foreach ( requester; socketList)
- {
- auto str = sRecv(requester);
- writefln("Received reply %d [%s]", requestNbr, str);
- }
- }
- }
- string sRecv(ref Socket socket)
- {
- ubyte[256] buffer;
- immutable size = socket.receive(buffer);
- import std.algorithm: min;
- return buffer[0 .. min(size,256)].idup.asString();
- }
- void main( string[] args ) {
- auto responder = Socket(SocketType.rep);
- string temp = "ipc:///tmp/" ~ args[1];
- responder.bind(temp);
- // Another thread needs to be created for listening websocket which I would like to avoid for avoid complications like creating a thread making
- while (true) {
- ubyte[10] buffer;
- responder.receive(buffer);
- writeln(args[1], " Received Hello");
- Thread.sleep(1.seconds);
- // Instead of this dummy message I need to pass the string I get from websocket which runs from another thread
- string message = "World from " ~ args[1];
- responder.send(message);
- }
Add Comment
Please, Sign In to add comment