ユーザ用ツール

サイト用ツール


サイドバー

このページの翻訳:



最近の更新



Tag Cloud

15_python:04_parallel

文書の過去の版を表示しています。


04 Python 並列処理

from concurrent.futures import ThreadPoolExecutor
from logging import StreamHandler, Formatter, INFO, getLogger

def init_logger():
    handler = StreamHandler()
    handler.setLevel(INFO)
    handler.setFormatter(Formatter("[%(asctime)s] [%(threadName)s] %(message)s"))
    logger = getLogger()
    logger.addHandler(handler)
    logger.setLevel(INFO)
    
def task(v):
    getLogger().info("%s start", v)
    time.sleep(1.0)

def main():
    global host
    db_host = '10.110.0.20'
    hosts = get_host(db_host)
    #print(hosts)

    init_logger()
    getLogger().info("main start")
    with ThreadPoolExecutor(max_workers=10, thread_name_prefix="thread") as executor:
        for i in range(5):
            executor.submit(task, i)
        getLogger().info("submit end")
    getLogger().info("main end")


if __name__ == "__main__":
    main()
15_python/04_parallel.1565316712.txt.gz · 最終更新: 2019/08/09 11:11 by matsui