multiprocessing Pool 進程池

import logging import datetime import multiprocessing FORMAT = "%(process)d %(processName)s %(thread)d %(message)s" logging.basicConfig(level=logging.INFO, format=FORMAT) def calc(i): sum = 0 for _ in range(100000000): sum += 1 logging.info('{}.in function'.format(sum)) return sum if __name__ == '__main__': start = datetime.datetime.now() pool = multiprocessing.Pool(2) for i in range(5): pool.apply_async(calc, args=(i, ), callback=lambda x: logging.info('{}.in callback'.format(x))) pool.close() pool.join() delta = (datetime.datetime.now() - start).total_seconds() print(delta)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章