本文整理汇总了Python中circuits.Manager.start方法的典型用法代码示例。如果您正苦于以下问题:Python Manager.start方法的具体用法?Python Manager.start怎么用?Python Manager.start使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类circuits.Manager
的用法示例。
在下文中一共展示了Manager.start方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_unix
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_unix(tmpdir, Poller):
m = Manager() + Poller()
sockpath = tmpdir.ensure("test.sock")
filename = str(sockpath)
server = Server() + UNIXServer(filename)
client = Client() + UNIXClient()
server.register(m)
client.register(m)
m.start()
try:
assert pytest.wait_for(server, "ready")
assert pytest.wait_for(client, "ready")
client.fire(connect(filename))
assert pytest.wait_for(client, "connected")
assert pytest.wait_for(server, "connected")
assert pytest.wait_for(client, "data", b"Ready")
client.fire(write(b"foo"))
assert pytest.wait_for(server, "data", b"foo")
client.fire(close())
assert pytest.wait_for(client, "disconnected")
assert pytest.wait_for(server, "disconnected")
server.fire(close())
assert pytest.wait_for(server, "closed")
finally:
m.stop()
os.remove(filename)
示例2: after_properties_set
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def after_properties_set(self):
""" Run by Spring Python after all the JMS container's properties have
been set.
"""
for idx in range(self.concurrent_listeners):
# Create as many Circuits managers as there are JMS listeners.
manager = Manager()
manager.start()
# A pool of handler threads for each listener.
handlers_pool = ThreadPool(self.handlers_per_listener)
# Each manager gets assigned its own listener.
listener = WebSphereMQListener()
# Assign the listener and a debugger component to the manager.
manager += listener
manager += Debugger(logger=self.logger)
listener.factory = self.factory
listener.destination = self.destination
listener.handler = self.handler
listener.handlers_pool = handlers_pool
listener.wait_interval = self.wait_interval
listener.start()
示例3: test_basic
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_basic(Poller, ipv6):
m = Manager() + Poller()
if ipv6:
udp_server = UDP6Server(("::1", 0))
udp_client = UDP6Client(("::1", 0), channel="client")
else:
udp_server = UDPServer(0)
udp_client = UDPClient(0, channel="client")
server = Server() + udp_server
client = Client() + udp_client
server.register(m)
client.register(m)
m.start()
try:
assert pytest.wait_for(server, "ready")
assert pytest.wait_for(client, "ready")
wait_host(server)
client.fire(write((server.host, server.port), b"foo"))
assert pytest.wait_for(server, "data", b"foo")
client.fire(close())
assert pytest.wait_for(client, "closed")
server.fire(close())
assert pytest.wait_for(server, "closed")
finally:
m.stop()
示例4: test_main
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_main():
id = "%s:%s" % (os.getpid(), current_thread().getName())
m = Manager()
assert repr(m) == "<Manager/ %s (queued=0) [S]>" % id
app = App()
app.register(m)
s = repr(m)
assert s == "<Manager/ %s (queued=1) [S]>" % id
m.start()
pytest.wait_for(m, "_running", True)
sleep(0.1)
s = repr(m)
assert s == "<Manager/ %s (queued=0) [R]>" % id
m.stop()
pytest.wait_for(m, "_Manager__thread", None)
s = repr(m)
assert s == "<Manager/ %s (queued=0) [S]>" % id
示例5: test_unix
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_unix(tmpfile, Poller):
m = Manager() + Poller()
server = Server() + UNIXServer(tmpfile)
client = Client() + UNIXClient()
server.register(m)
client.register(m)
m.start()
try:
assert pytest.wait_for(server, "ready")
assert pytest.wait_for(client, "ready")
client.fire(connect(tmpfile))
assert pytest.wait_for(client, "connected")
assert pytest.wait_for(server, "connected")
assert pytest.wait_for(client, "data", b"Ready")
client.fire(write(b"foo"))
assert pytest.wait_for(server, "data", b"foo")
client.fire(close())
assert pytest.wait_for(client, "disconnected")
assert pytest.wait_for(server, "disconnected")
server.fire(close())
assert pytest.wait_for(server, "closed")
finally:
m.stop()
示例6: test_pipe
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_pipe(Poller):
m = Manager() + Poller()
a, b = Pipe("a", "b")
a.register(m)
b.register(m)
a = Client(channel=a.channel).register(m)
b = Client(channel=b.channel).register(m)
m.start()
try:
assert pytest.wait_for(a, "ready")
assert pytest.wait_for(b, "ready")
a.fire(write(b"foo"))
assert pytest.wait_for(b, "data", b"foo")
b.fire(write(b"foo"))
assert pytest.wait_for(a, "data", b"foo")
a.fire(close())
assert pytest.wait_for(a, "disconnected")
b.fire(close())
assert pytest.wait_for(b, "disconnected")
finally:
m.stop()
示例7: test_close
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_close(Poller, ipv6):
m = Manager() + Poller()
server = Server() + UDPServer(0)
server.register(m)
m.start()
try:
assert pytest.wait_for(server, "ready")
wait_host(server)
host, port = server.host, server.port
server.fire(close())
assert pytest.wait_for(server, "disconnected")
server.unregister()
def test(obj, attr):
return attr not in obj.components
assert pytest.wait_for(m, server, value=test)
server = Server() + UDPServer((host, port))
server.register(m)
assert pytest.wait_for(server, "ready", timeout=30.0)
finally:
m.stop()
示例8: test_removeHandler
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_removeHandler():
m = Manager()
m.start()
method = m.addHandler(on_foo)
waiter = pytest.WaitEvent(m, "foo")
x = m.fire(foo())
waiter.wait()
s = x.value
assert s == "Hello World!"
m.removeHandler(method)
waiter = pytest.WaitEvent(m, "foo")
x = m.fire(foo())
waiter.wait()
assert x.value is None
assert on_foo not in dir(m)
assert "foo" not in m._handlers
m.stop()
示例9: test_tcp_lookup_failure
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_tcp_lookup_failure(Poller, ipv6):
m = Manager() + Poller()
if ipv6:
tcp_client = TCP6Client()
else:
tcp_client = TCPClient()
client = Client() + tcp_client
client.register(m)
m.start()
try:
assert pytest.wait_for(client, "ready")
client.fire(connect("foo", 1234))
assert pytest.wait_for(
client, "error", lambda obj, attr: isinstance(getattr(obj, attr), SocketError))
if pytest.PLATFORM == "win32":
assert client.error.errno == 11004
else:
assert client.error.errno in (EAI_NODATA, EAI_NONAME,)
finally:
m.stop()
示例10: test_tcp_reconnect
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_tcp_reconnect(Poller, ipv6):
# XXX: Apparently this doesn't work on Windows either?
# XXX: UPDATE: Apparently Broken on Windows + Python 3.2
# TODO: Need to look into this. Find out why...
if pytest.PLATFORM == "win32" and pytest.PYVER[:2] >= (3, 2):
pytest.skip("Broken on Windows on Python 3.2")
m = Manager() + Poller()
if ipv6:
tcp_server = TCP6Server(("::1", 0))
tcp_client = TCP6Client()
else:
tcp_server = TCPServer(0)
tcp_client = TCPClient()
server = Server() + tcp_server
client = Client() + tcp_client
server.register(m)
client.register(m)
m.start()
try:
assert pytest.wait_for(client, "ready")
assert pytest.wait_for(server, "ready")
wait_host(server)
# 1st connect
client.fire(connect(server.host, server.port))
assert pytest.wait_for(client, "connected")
assert pytest.wait_for(server, "connected")
assert pytest.wait_for(client, "data", b"Ready")
client.fire(write(b"foo"))
assert pytest.wait_for(server, "data", b"foo")
# disconnect
client.fire(close())
assert pytest.wait_for(client, "disconnected")
# 2nd reconnect
client.fire(connect(server.host, server.port))
assert pytest.wait_for(client, "connected")
assert pytest.wait_for(server, "connected")
assert pytest.wait_for(client, "data", b"Ready")
client.fire(write(b"foo"))
assert pytest.wait_for(server, "data", b"foo")
client.fire(close())
assert pytest.wait_for(client, "disconnected")
assert pytest.wait_for(server, "disconnected")
server.fire(close())
assert pytest.wait_for(server, "closed")
finally:
m.stop()
示例11: main
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def main():
opts, args = parse_options()
bind = parse_bind(opts.bind)
if opts.validate:
application = (Application() + Root())
app = validator(application)
httpd = make_server(bind[0], bind[1], app)
httpd.serve_forever()
raise SystemExit(0)
manager = Manager()
opts.debug and Debugger().register(manager)
Poller = select_poller(opts.poller.lower())
Poller().register(manager)
if opts.server.lower() == "base":
BaseServer(bind).register(manager)
HelloWorld().register(manager)
else:
Server(bind).register(manager)
Root().register(manager)
docroot = os.getcwd() if not args else args[0]
Static(docroot=docroot, dirlisting=True).register(manager)
opts.passwd and Authentication(passwd=opts.passwd).register(manager)
opts.logging and Logger().register(manager)
if opts.profile and hotshot:
profiler = hotshot.Profile(".profile")
profiler.start()
if opts.debug:
print(graph(manager, name="circuits.web"))
print()
print(inspect(manager))
for i in range(opts.jobs):
manager.start(process=True)
manager.run()
if opts.profile and hotshot:
profiler.stop()
profiler.close()
stats = hotshot.stats.load(".profile")
stats.strip_dirs()
stats.sort_stats("time", "calls")
stats.print_stats(20)
示例12: test_addHandler
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_addHandler():
m = Manager()
m.start()
m.addHandler(on_foo)
waiter = pytest.WaitEvent(m, "foo")
x = m.fire(foo())
waiter.wait()
s = x.value
assert s == "Hello World!"
m.stop()
示例13: manager
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def manager(request):
manager = Manager()
def finalizer():
manager.stop()
request.addfinalizer(finalizer)
manager.start()
if request.config.option.verbose:
Debugger().register(manager)
return manager
示例14: test_tcp_bind
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def test_tcp_bind(Poller, ipv6):
m = Manager() + Poller()
if ipv6:
sock = socket(AF_INET6, SOCK_STREAM)
sock.bind(("::1", 0))
sock.listen(5)
_, bind_port, _, _ = sock.getsockname()
sock.close()
server = Server() + TCP6Server(("::1", 0))
client = Client() + TCP6Client()
else:
sock = socket(AF_INET, SOCK_STREAM)
sock.bind(("", 0))
sock.listen(5)
_, bind_port = sock.getsockname()
sock.close()
server = Server() + TCPServer(0)
client = Client() + TCPClient()
server.register(m)
client.register(m)
m.start()
try:
assert pytest.wait_for(client, "ready")
assert pytest.wait_for(server, "ready")
wait_host(server)
client.fire(connect(server.host, server.port))
assert pytest.wait_for(client, "connected")
assert pytest.wait_for(server, "connected")
assert pytest.wait_for(client, "data", b"Ready")
# assert server.client[1] == bind_port
client.fire(write(b"foo"))
assert pytest.wait_for(server, "data", b"foo")
client.fire(close())
assert pytest.wait_for(client, "disconnected")
assert pytest.wait_for(server, "disconnected")
server.fire(close())
assert pytest.wait_for(server, "closed")
finally:
m.stop()
示例15: manager
# 需要导入模块: from circuits import Manager [as 别名]
# 或者: from circuits.Manager import start [as 别名]
def manager(request):
manager = Manager()
def finalizer():
manager.stop()
request.addfinalizer(finalizer)
waiter = WaitEvent(manager, "started")
manager.start()
assert waiter.wait()
if request.config.option.verbose:
Debugger().register(manager)
return manager