我开始做异步代码,但我仍然不完全理解它。在

我编写了一个程序来设置CherryPy web服务器,并故意延迟GET请求的返回。

然后我使用aiohttp模块发出一个异步请求。在

我做了些什么:

在等待响应的同时运行一些打印循环

我想有效地做什么:

让循环运行直到我得到响应(现在它只是继续运行)

这是我的准则:import cherrypy

import time

import threading

import asyncio

import aiohttp

# The Web App

class CherryApp:

@cherrypy.expose

def index(self):

time.sleep(5)

return open('views/index.html')

async def get_page(url):

session = aiohttp.ClientSession()

resp = await session.get(url)

return resp

async def waiter():

# I want to break this loop when I get a response

while True:

print("Waiting for response")

await asyncio.sleep(1)

if __name__ == '__main__':

# Start the server

server = threading.Thread(target=cherrypy.quickstart, args=[CherryApp()])

server.start()

# Run the async methods

event_loop = asyncio.get_event_loop()

tasks = [get_page('http://127.0.0.1:8080/'), waiter()]

# Obviously, the 'waiter()' method never completes, so this just runs forever

event_loop.run_until_complete(asyncio.wait(tasks))

那么,如何使异步函数相互“感知”?在

python异步通信_Python:如何使这些异步方法进行通信?相关推荐

  1. android 手机 与 python服务器_python服务器与android客户端socket通信实例

    本文实例讲述了python服务器与android客户端socket通信的方法.分享给大家供大家参考.具体实现方法如下: 首先,服务器端使用python完成,下面为python代码: #server.p ...

  2. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

  3. python编程语言_python编程语言的简要历史

    python编程语言 The Python programming language is a general-purpose programming language that has carved ...

  4. 2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?

    2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?编程界的王者是渐落寞的Java还是大火的Python? 是不是你们也喜 ...

  5. python画代码-Python教程_Python画Mandelbrot集 代码

    Python教程_Python画Mandelbrot集 代码 作者:Comet 来源: 课课家 www.kokojia.com点击数:278发布时间:2015-06-19 11:17:19 曼德勃罗集 ...

  6. boost::python模块显示如何使扩展类pickleable

    boost::python模块显示如何使扩展类pickleable 实现功能 C++实现代码 实现功能 boost::python模块显示如何使扩展类pickleable C++实现代码 #inclu ...

  7. python编辑器_python编辑器,作为小白该如何抉择?

    刚开始接触编程,有一个好的编辑器上手,那学习起来肯定是事半功倍的!本篇就给大家介绍适合零基础小白学习Python的四种编辑器,希望大家受用! 1.Sublime Text: 这是一个轻量级的代码编辑器 ...

  8. python卸载_Python包管理工具pip - amanlikethis

    一.pip概述 包 python包,可以使我们利用网络上现成的代码库资源,解决程序中某一方面的问题,类似于C语言的各种库. PyPi(Python Package Index ,包索引)   是 Py ...

  9. pretty-errors:美化python异常输出以使其清晰易读

    pretty-errors:美化python异常输出以使其清晰易读 参考文章: (1)pretty-errors:美化python异常输出以使其清晰易读 (2)https://www.cnblogs. ...

最新文章

  1. ​计算产业如何加速突破?鲲鹏开发者技术沙龙带来新答案
  2. Activity Stack
  3. redis 集群搭建_一文轻松搞懂redis集群原理及搭建与使用
  4. CometOJ#6 双倍快乐(简单DP)
  5. java打印平行四边形
  6. Hibernate Criteria示例教程
  7. c++求矩阵的秩_一文搞定矩阵相关概念 使用Excel矩阵计算不用愁
  8. JavaScript 原始数据类型转换
  9. POJ2083 ZOJ3507 Fractal题解
  10. 计算机上键盘无法输入法,电脑中输入法设置窗口提示检测到不兼容的键盘驱动的解决方法...
  11. linux平台生成awr报告,Linux平台生成awr报告
  12. php 数字英文中文版,php过滤只保留中文,英文以及数字的方法
  13. 联想服务器如何u盘安装系统教程,u盘联想系统安装教程 联想如何启动u盘安装系统教程...
  14. 供应链金融三种模式介绍及对比
  15. C++调python(执行py文件)
  16. 从Watson看AI平台的架构设计
  17. IP地址的简明计算方法
  18. python byte和str转换
  19. Unix和Linux
  20. nginx常用的优化配置

热门文章

  1. -Werror=deprecated-declarations
  2. 【Spring Cloud Alibaba】(二)微服务调用组件Feign原理+实战
  3. 官宣!2021 开源社理事会选举结果公布!
  4. CTFshow-菜狗杯WP
  5. 手写简单版 Promise
  6. 面试必备(背)--Go语言八股文系列
  7. 【Oracle宝典】排序与各类函数
  8. 华为服务器修改登录密码,如何修改服务器的登录密码
  9. ip addr del 操作ip时的注意事项
  10. Flutter | 验证码的倒计时进入后台停止了怎么办?