diff options
author | 2015-08-24 13:22:48 +0300 | |
---|---|---|
committer | 2015-08-24 13:22:48 +0300 | |
commit | dab741a80699f86e86c91718872a052cca9bbb25 (patch) | |
tree | 1959c4a2cea440170a5113dcb067796cb20ffb64 /external_libs/python/pyzmq-14.7.0/examples/device | |
parent | d3f26ece7d4383df0b22fe9c3cb3e695381ec737 (diff) |
Fixed dependencies of Control Plane to use external_lib sources
Diffstat (limited to 'external_libs/python/pyzmq-14.7.0/examples/device')
-rw-r--r-- | external_libs/python/pyzmq-14.7.0/examples/device/client.py | 38 | ||||
-rw-r--r-- | external_libs/python/pyzmq-14.7.0/examples/device/server.py | 52 |
2 files changed, 90 insertions, 0 deletions
diff --git a/external_libs/python/pyzmq-14.7.0/examples/device/client.py b/external_libs/python/pyzmq-14.7.0/examples/device/client.py new file mode 100644 index 00000000..14a4e26a --- /dev/null +++ b/external_libs/python/pyzmq-14.7.0/examples/device/client.py @@ -0,0 +1,38 @@ +"""A client for the device based server.""" + +# +# Copyright (c) 2010 Brian E. Granger and Eugene Chernyshov +# +# This file is part of pyzmq. +# +# pyzmq is free software; you can redistribute it and/or modify it under +# the terms of the Lesser GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# pyzmq is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# Lesser GNU General Public License for more details. +# +# You should have received a copy of the Lesser GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +import zmq +import os +from time import time + +print 'Client', os.getpid() + +context = zmq.Context(1) + +socket = context.socket(zmq.REQ) +socket.connect('tcp://127.0.0.1:5555') + +while True: + data = zmq.Message(str(os.getpid())) + start = time() + socket.send(data) + data = socket.recv() + print time()-start, data + diff --git a/external_libs/python/pyzmq-14.7.0/examples/device/server.py b/external_libs/python/pyzmq-14.7.0/examples/device/server.py new file mode 100644 index 00000000..b29a3c1b --- /dev/null +++ b/external_libs/python/pyzmq-14.7.0/examples/device/server.py @@ -0,0 +1,52 @@ +"""A device based server.""" + +# +# Copyright (c) 2010 Brian E. Granger and Eugene Chernyshov +# +# This file is part of pyzmq. +# +# pyzmq is free software; you can redistribute it and/or modify it under +# the terms of the Lesser GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# pyzmq is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# Lesser GNU General Public License for more details. +# +# You should have received a copy of the Lesser GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +import zmq +import os +import threading +import time + +print 'Server', os.getpid() + +def routine(context): + socket = context.socket(zmq.REP) + + socket.connect("inproc://workers") + + while True: + message = socket.recv() + time.sleep(1) + socket.send(message) + +context = zmq.Context(1) + +workers = context.socket(zmq.DEALER) +workers.bind("inproc://workers"); + +clients = context.socket(zmq.DEALER) +clients.bind('tcp://127.0.0.1:5555') + +for i in range(10): + thread = threading.Thread(target=routine, args=(context, )) + thread.start() + +zmq.device(zmq.QUEUE, clients, workers) + +print "Finished" |