当前位置: 首页 > news >正文

顺德中小企业网站建设与传统市场营销的区别与联系有哪些

顺德中小企业网站建设,与传统市场营销的区别与联系有哪些,商城网站有免费建设的吗,深圳建设 骏域网站建设专家在一篇文章 理解Python异步编程的基本原理 这篇文章中#xff0c;我们讲到#xff0c;如果在异步代码里面又包含了一段非常耗时的同步代码#xff0c;异步代码就会被卡住。那么有没有办法让同步代码与异步代码看起来也是同时运行的呢?方法就是使用事件循环的.run_in_execut…在一篇文章 理解Python异步编程的基本原理 这篇文章中我们讲到如果在异步代码里面又包含了一段非常耗时的同步代码异步代码就会被卡住。那么有没有办法让同步代码与异步代码看起来也是同时运行的呢?方法就是使用事件循环的.run_in_executor()方法。我们来看一下 Python 官方文档[1]中的说法那么怎么使用呢?还是以非常耗时的递归方式计算斐波那契数列的这个函数为例def sync_calc_fib(n):if n in [1, 2]:return1return sync_calc_fib(n - 1) sync_calc_fib(n - 2)async def calc_fib(n):result sync_calc_fib(n)print(f第 {n} 项计算完成结果是{result})return result我们现在需要用 aiohttp 访问一个延迟5秒的网页同时计算斐波那契数列第36项。首先我们看看单独计算第36项需要5秒钟我们再来看看如果直接把这计算斐波那契数列和请求网站的两个异步任务放在一起“并行”实际时间是两个任务的时间叠加具体原因我在上一篇文章里面已经做了说明。现在我想让两个任务“同时运行”于是就可以这样修改代码import aiohttpimport asyncioimport timefrom concurrent.futures import ThreadPoolExecutorasync def request(sleep_time):async with aiohttp.ClientSession() as client:resp await client.get(fhttp://127.0.0.1:8000/sleep/{sleep_time})resp_json await resp.json()print(resp_json)def sync_calc_fib(n):if n in [1, 2]:return 1return sync_calc_fib(n - 1) sync_calc_fib(n - 2)def calc_fib(n):result sync_calc_fib(n)print(f第 {n} 项计算完成结果是{result})return resultasync def main():start time.perf_counter()loop asyncio.get_event_loop()with ThreadPoolExecutor(max_workers4) as executor:tasks_list [loop.run_in_executor(executor, calc_fib, 36),asyncio.create_task(request(5))]await asyncio.gather(*tasks_list)end time.perf_counter()print(f总计耗时{end - start})asyncio.run(main())运行效果如下图所示在5秒钟的时间就把计算斐波那契数列和请求5秒延迟的网站都做完了。实现这样的转变关键的代码就是loop.run_in_executor(executor, calc_fib, 36)其中的 loop就是主线程的事件循环(event loop)它是用来调度同一个线程里面的多个协程。executor是我们使用ThreadPoolExecutor(max_workers4)创建的一个有4个线程的线程池calc_fib是一个耗时的同步函数36是传入calc_fib的参数。loop.run_in_executor(executor, calc_fib, 36)的意思是说把calc_fib函数放到线程池里面去运行给线程池增加一个回调函数这个回调函数会在运行结束后的下一次事件循环把结果保存下来。请注意上图中红色箭头对应的calc_fib这是一个同步函数请与上一篇文章中的异步函数区分开。run_in_executor的第二个参数需要是一个同步函数的函数名。在上面的例子中我们创建的是有4个线程的线程池。所以这个线程池最多允许4个阻塞式的同步函数“并行”。总结到此这篇关于在Python 的线程中运行协程的方法的文章就介绍到这了,更多相关python线程中运行协程内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们本文标题: 在Python 的线程中运行协程的方法本文地址: http://www.cppcns.com/jiaoben/python/301339.html
http://www.sadfv.cn/news/161170/

相关文章:

  • 南京协会网站建设wordpress新建页面连接无法访问
  • 优质做网站照片做视频的软件 模板下载网站
  • flash网站php源码wordpress.net
  • 个人网站开发要多久百度人工服务
  • 网站建设实物实训目的html框架
  • 比特币交易网站可以做空吗职业生涯规划大赛活动总结
  • 给别人做网站收多少钱权威发布的含义
  • 做网站最好的软件网站建设倒计时单页源码
  • 工信部网站备案查询 验证码错误买源码做网站
  • 关于网站制作的文案新网域名续费
  • 萍乡网站开发公司免费搭建商业网站
  • 一条龙网站建设做动物网站的原因是
  • 做网站后台需要什么知识暴雪官网
  • 网站绝对布局手机h5页面怎么制作
  • 常见的网站建设类型都有哪些网站建设制作及推广
  • 某网络公司网站源码 蓝色建站企业网站源码wordpress添加新文章类型
  • 破解网站后台账号密码做打牌的网站怎么办
  • 淮安市建设局网站洛阳建设信息网站
  • html网站引导页模板免费域名注册个人服务器搭建
  • 中江建设银行网站网站建设怎样创建链接
  • 建设农家书屋官方网站做建材去什么网站
  • 建设银行的网站你打不开物业管理系统价格
  • 这么做国外网站的国内镜像站免费怎样搭建网站
  • html手机网站模板下载广东公司网站建设企业
  • 做自媒体怎么在其它网站搬运内容查看自己网站访问量
  • 网站收缩栏电脑iis做网站
  • 唐山诚达建设集团网站街区网站建设
  • 西安微信商城网站设计网站制作一键生成
  • 一个网站的优势有哪些百度网盘官方下载
  • 重庆正云环保建设网站网站开发包含上线吗