¿El registro de Python admite el multiprocesamiento?

Me han dicho que el registro no se puede usar en Multiprocesamiento. Debe hacer el control de concurrencia en caso de que el multiprocesamiento altere el registro.

Pero hice algunas pruebas, parece que no hay problema al usar el inicio de sesión en multiprocesamiento

import time
import logging
from multiprocessing import Process, current_process, pool


# setup log
logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                    datefmt='%a, %d %b %Y %H:%M:%S',
                    filename='/tmp/test.log',
                    filemode='w')


def func(the_time, logger):
    proc = current_process()
    while True:
        if time.time() >= the_time:
            logger.info('proc name %s id %s' % (proc.name, proc.pid))
            return



if __name__ == '__main__':

    the_time = time.time() + 5

    for x in xrange(1, 10):
        proc = Process(target=func, name=x, args=(the_time, logger))
        proc.start()

Como puedes ver en el código.

Deliberadamente dejo que el subproceso escriba el registro en el mismo momento (5 segundos después del inicio) para aumentar la posibilidad de conflicto. Pero no hay conflicto en absoluto.

Entonces, mi pregunta es ¿podemos usar el inicio de sesión en multiprocesamiento? ¿Por qué tantas publicaciones dicen que no podemos?

Respuestas a la pregunta(3)

Su respuesta a la pregunta