[PYTHON] Parallelisierung

import logging
import threading
import time

logging.basicConfig(level=logging.DEBUG, format='%(threadName)s: %(message)s')


def worker1():
    logging.debug('start')
    time.sleep(5)
    logging.debug('end')


def worker2(x, y=1):
    logging.debug('start')
    logging.debug(x)
    logging.debug(y)
    time.sleep(2)
    logging.debug('end')


if __name__ == '__main__':
    t1 = threading.Thread(name='rename worker', target=worker1)
    t1.setDaemon(True) 
    t2 = threading.Thread(target=worker2, args=(100,), kwargs={'y': 200})
    t1.start()
    t2.start()
    print('started')
    t1.join() #Warten Sie, bis worker1 die Verarbeitung abgeschlossen hat. Ohne dies endet das Programm, wenn der vorherige t2 endet.
    t2.join() #Sie müssen es nicht schreiben, da es kein Daemon ist

Ausgabe


rename worker: start
Thread-1: start
Thread-1: 100
Thread-1: 200
started
Thread-1: end
rename worker: end

Recommended Posts

Parallelisierung
Parallelisierung der Klassenmethode