def run(self): logging.info("[Process %s] started workload: %s" % (self.id, self.task['id'])) asyncio.set_event_loop(get_event_loop()) loop = asyncio.get_event_loop() try: loop.add_signal_handler( signal.SIGINT, functools.partial(asyncio.ensure_future, self.shut_down(signal.SIGINT, loop))) loop.run_until_complete(self.create_clients()) while True: if len(self.clients) == 0: loop.run_until_complete(self.create_clients()) loop.run_until_complete(self.run_async()) except KeyboardInterrupt: pass except Exception as ex: import traceback traceback.print_exc() finally: pass
async def get_couchbase(): cluster = Cluster( "couchbase://localhost", ClusterOptions(PasswordAuthenticator("Administrator", "password"))) bucket = cluster.bucket("travel-sample") await bucket.on_connect() collection = bucket.default_collection() return cluster, bucket, collection async def simple_query(cluster): try: result = cluster.search_query("travel-sample-index", search.QueryStringQuery("swanky")) async for row in result: print("Found row: {}".format(row)) except CouchbaseException as ex: print(ex) loop = get_event_loop() cluster, bucket, collection = loop.run_until_complete(get_couchbase()) loop.run_until_complete(simple_query(cluster)) # end::simple_query[]
def setUp(self, **kwargs): asyncio.set_event_loop(get_event_loop()) super(AioTestCase, self).setUp(**kwargs)
def wrapper(*args, **kwargs): future = f(*args, **kwargs) loop = get_event_loop() loop.run_until_complete(future)