github.com/platonnetwork/platon-go@v0.7.6/cases/common/global_var.py (about)

     1  from concurrent.futures.process import ProcessPoolExecutor
     2  from concurrent.futures.thread import ThreadPoolExecutor
     3  
     4  from common.log import log
     5  
     6  _global_dict = {}
     7  
     8  
     9  def initGlobal():
    10      global _global_dict
    11      _global_dict = {}
    12      _global_dict["threadPoolExecutor"] = ThreadPoolExecutor(max_workers=40)
    13  
    14  
    15  def set_value(name, value):
    16      _global_dict[name] = value
    17  
    18  
    19  def get_value(name, defValue=None):
    20      try:
    21          return _global_dict[name]
    22      except KeyError:
    23          return defValue
    24  
    25  
    26  def getThreadPoolExecutor(defValue=None):
    27      try:
    28          return _global_dict["threadPoolExecutor"]
    29      except KeyError:
    30          return defValue
    31  
    32  
    33  def default_thread_pool_callback(worker):
    34      worker_exception = worker.exception()
    35      if worker_exception:
    36          log.exception("Thread return exception: {}".format(worker_exception))
    37  
    38  
    39  initGlobal()