浏览代码

Don't leak file descriptors.

Ask Solem 16 年之前
父节点
当前提交
5575986cf0
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      celery/log.py

+ 4 - 0
celery/log.py

@@ -14,6 +14,10 @@ def setup_logger(loglevel=DAEMON_LOG_LEVEL, logfile=None, format=LOG_FORMAT,
     Returns logger object.
     Returns logger object.
     """
     """
     logger = multiprocessing.get_logger()
     logger = multiprocessing.get_logger()
+    for handler in logger.handlers:
+        if hasattr(handler, "stream"):
+            handler.stream.close()
+    logger.handlers = []
     if logfile:
     if logfile:
         if hasattr(logfile, "write"):
         if hasattr(logfile, "write"):
             log_file_handler = logging.StreamHandler(logfile)
             log_file_handler = logging.StreamHandler(logfile)