def wait_for_all_threads(): global Loggers from moat.logging import Loggers as _Loggers from moat.logging import stop_loggers Loggers = _Loggers n = 0 # for job,t in gthreads.items(): # print("G WAIT %d %s %s %s" % ((job,)+t[1:]), file=sys.stderr) for r in (True, False): while nr_threads(r): if n == 10: # for job,t in Jobs.items(): # print("G WAIT %d %r %r %r" % (job,t.func,t.a,t.k), file=sys.stderr) break n += 1 try: gevent.sleep(0) except gevent.GreenletExit as ex: # fix_exception(ex) # print_exception(ex) pass if r: stop_loggers() for n in range(100): try: gevent.sleep(0) except gevent.GreenletExit as ex: # fix_exception(ex) # print_exception(ex) pass
def wait_for_all_threads(): global Loggers from moat.logging import Loggers as _Loggers from moat.logging import stop_loggers Loggers = _Loggers n=0 # for job,t in gthreads.items(): # print("G WAIT %d %s %s %s" % ((job,)+t[1:]), file=sys.stderr) for r in (True,False): while nr_threads(r): if n==10: # for job,t in Jobs.items(): # print("G WAIT %d %r %r %r" % (job,t.func,t.a,t.k), file=sys.stderr) break n += 1 try: gevent.sleep(0) except gevent.GreenletExit as ex: # fix_exception(ex) # print_exception(ex) pass if r: stop_loggers() for n in range(100): try: gevent.sleep(0) except gevent.GreenletExit as ex: # fix_exception(ex) # print_exception(ex) pass
def _stop_mainloop(): global stopping if not stopping: stopping = True dropConnections() wait_for_all_threads() # Debugging from moat.logging import stop_loggers stop_loggers() shut_down()