zoukankan      html  css  js  c++  java
  • 异步IO

    解决CPU高速执行能力和IO设备龟速严重不匹配的方法:

    • 同步IO:用多线程和多进程。但是线程的数目不能无限增大,否则,CPU的时间就花在线程切换上了。
    • 异步IO:CPU只发出io指令,并不等待io结果。

    异步IO:

    按照普通顺序写出的代码实际上是没法完成异步IO的。

    异步IO模型需要一个消息循环,在消息循环中,主线程不断地重复“读取消息-处理消息”这一过程:

    loop = get_event_loop()
    while True:
        event = loop.get_event()
        process_event(event)

    在“发出IO请求”到收到“IO完成”的这段时间里,同步IO模型下,主线程只能挂起,但异步IO模型下,主线程并没有休息,而是在消息循环中继续处理其他消息。这样,在异步IO模型下,一个线程就可以同时处理多个IO请求,并且没有切换线程的操作。对于大多数IO密集型的应用程序,使用异步IO将大大提升系统的多任务处理能力。

    协程

    asyncio

    async/await

    aiohttp

    如有疑问请联系我,写的不对的地方请联系我进行更改,感谢~ QQ:1968380831
  • 相关阅读:
    AOD.net
    C# Eval()和Bind()
    .Net使用微軟自帶的用戶驗證和登錄授權
    .Net面試4套
    .Net面試題
    MVC开发模式
    .Net自帶Ajax和GridView
    HTML系列(HTMl+CSS+JavaScript+Jquery)--un
    .Net母版页
    .NetDOM操作--un
  • 原文地址:https://www.cnblogs.com/1zhangwenjing/p/7846553.html
Copyright © 2011-2022 走看看