def test_zmq_eventengine(): """测试函数""" import sys from datetime import datetime import time def simpletest(event): six.print_(str(datetime.now()), event.route) six.print_('test_zmq_eventengine.....') ee = ZMQEventEngine('test_zmq_eventengine') ee.register(Event.TIMER, simpletest) timer = Timer(ee) ee.start() timer.start() event = Event(route=Event.TIMER) ee.emit(event) ## @TODO test_unregister #time.sleep(2) #ee.stop_timer() #time.sleep(2) #ee.resume_timer() try: while True: time.sleep(1) except KeyboardInterrupt: timer.stop() ee.stop() sys.exit(0)
def __init__(self): log.info("Init Shell..") self._engine = ZMQEventEngine('Shell') self._engine.start() self.gate = EventRPCClient('Shell', self._engine, WindowGate.SERVER_FOR_SHELL) self._backend = EventRPCClient('test_shell', self._engine, Backend.SERVER_FOR_SHELL)
def __init__(self): log.info("Init Backend..") self._dm = DataManager() self._engine = ZMQEventEngine('Backend') self._engine.start() self._shell_srv = EventRPCServer(self._engine, self.SERVER_FOR_SHELL) self._ui_srv = EventRPCServer(self._engine, self.SERVER_FOR_UI) self.register_functions(self._shell_srv) self.register_functions(self._ui_srv)
def __init__(self, widget): log.info("Init WindowGate..") self._engine = ZMQEventEngine('WindowGate') self._engine.start() self._backend = EventRPCClient('WindowGate', self._engine, Backend.SERVER_FOR_UI) self._shell_srv = EventRPCServer(self._engine, self.SERVER_FOR_SHELL) self._register_functions(self._shell_srv) self._period = None self._contract = None self._widget = widget
from quantdigger.event.eventengine import ZMQEventEngine from rpc import EventRPCClient engine = ZMQEventEngine('TestWindowGate') engine.start() client = EventRPCClient('client', engine, 'test') client.sync_call('print_hello', { 'data': 'nihao' })
def __init__(self): self.engine = ZMQEventEngine('TestWindowGate') self.engine.start() self.gate = mainwindow._gate
from timeit import timeit from quantdigger.util import gen_log as log from quantdigger.util import project_dir from quantdigger.event.rpc import EventRPCClient from quantdigger.event.eventengine import ZMQEventEngine from quantdigger.interaction.backend import Backend backend_path = os.path.join(project_dir, "quantdigger", "interaction", "backend.py") log.info("启动后台..") backend = subprocess.Popen('python %s' % backend_path, shell=True) time.sleep(1) engine = ZMQEventEngine('WindowGate') engine.start() shell = EventRPCClient('test_shell', engine, Backend.SERVER_FOR_SHELL) def func(): shell.sync_call("test_speed") return t = timeit('func()', 'from __main__ import func', number=100) print(t) subprocess.Popen.kill(backend) a = raw_input("Any key to quit quantdigger.")