美文网首页
[WIP] Python Concurrency Program

[WIP] Python Concurrency Program

作者: __小赤佬__ | 来源:发表于2019-08-27 00:27 被阅读0次

    在这里做些学习记录。目标:
    1、学会以下概念的基本使用;
    2、阅读源码与资料,了解以下概念的实现方式;
    3、在12的学习中发现自己还需要补进的知识盲点,加以学习。

    Thread

    # start a thread
    import threading
    thread = threading.Thread(target=func, args=(i,))
    thread.daemon = True  # do some background work
    thread.start()
    thread.join()
    

    Processing

    from multiprocessing import Process
    proc = Process(target=func, args=(i,))
    proc.start()
    proc.join()
    

    Asyncio

    async IO is a single-threaded, single-process design: it uses cooperative multitasking. It has been said in other words that async IO gives a feeling of concurrency despite using a single thread in a single process. Coroutines (a central feature of async IO) can be scheduled concurrently, but they are not inherently concurrent.

    aysncio runs a single threaded event loop. For blocking events, coroutines will transfer control to ThreadPoolExecutors where functions are executed in a separate thread.

    Event Loop

    Future

    Task

    Coroutine

    GIL

    References

    相关文章

      网友评论

          本文标题:[WIP] Python Concurrency Program

          本文链接:https://www.haomeiwen.com/subject/qguhectx.html