猿问

在 Windows 上重复的 Python 多处理 log_to_stderr

我正在关注使用多处理进行日志记录的文档,但我看到工作人员在每个子进程中创建了两个日志。我在某个地方犯了一个愚蠢的错误吗?


环境:


Python 3.6.1 |Anaconda 自定义(64 位)| (默认,2017 年 5 月 11 日,13:25:24)win32 上的 [MSC v.1900 64 位 (AMD64)]


代码(编辑以修复@georgexsh 推荐的范围问题):


import logging

import multiprocessing



logger = multiprocessing.log_to_stderr(logging.INFO)



def test(i):

    logger.info(f'worker processing {i}')



if __name__ == '__main__':

    with multiprocessing.Pool() as pool:

        metrics = pool.map(test, range(20))


GCT1015
浏览 186回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答