python stdin和stdout_stdin似乎比stdout(python)慢得多.为什么?

我有两个需要相互通信的

python程序(一个是子进程).目前我通过stdin和stdout这样做.然而,写入子进程的标准似乎很慢.

a.py,一个采用任意行输入并打印时间的程序:

from time import time, sleep

from sys import stdout, stdin

while True:

stdin.readline()

stdout.write('%f\n' % time())

stdout.flush()

b.py,一个运行a.py并且花费多长时间才能写入程序的stdin并读取它的stdout的程序:

from time import time

from subprocess import PIPE, Popen

from threading import Thread

stdin_times = []

stdout_times = []

p = Popen(['python', 'a.py'], stdin=PIPE, stdout=PIPE)

for i in range(100000):

t1 = time()

p.stdin.write(b'\n')

p.stdin.flush()

t2 = float(p.stdout.readline().strip().decode())

t3 = time()

stdin_times.append(t2 - t1)

stdout_times.append(t3 - t2)

p.kill()

print('stdin (min/ave):', min(stdin_times), sum(stdin_times) / len(stdin_times))

print('stdout (min/ave):', min(stdout_times), sum(stdout_times) / len(stdout_times))

样品输出:

stdin (min/ave): 1.69277191162e-05 0.000138891274929

stdout (min/ave): 1.78813934326e-05 2.09228754044e-05

我在Ubuntu 10.10上使用Python 3.1.2.

为什么写入an.py的标签比从其stdout读取慢得多?

有没有可以让这两个程序更快地沟通?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/534640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

postman生成python代码_别再用手敲了,这个工具可以自动生成python爬虫代码

我们在写爬虫代码时,常常需要各种分析调试,而且每次直接用代码调试都很麻烦所以今天给大家分享一个工具,不仅能方便模拟发送各种http请求,还能轻松调试,最重要的是,可以将调试最终结果自动转换成爬虫代码&a…

电工结业试卷_电工技术基础结业考试试卷

电工技术基础结业考试试卷适用年级2016级秋6班电子、计算机专业班级 姓名 学号一、 判断题(每题2分,共30分)1、 电位越高则电压越大。2、万用表的电压、电路及电阻档的刻度都是均匀的。3、 在任何情况下,电压源和电流源之间总是可以等效变换的。 4、 电容…

表格里面怎么打多个√_Excel怎样在表格里打√?

我们做表的时候有时会遇到输入对或错的情况。Excel表格里面输入√和,普通的方法是直接插入特殊符号来进行对勾的输入。这样输入起来1个2个还可以接受,但是如果频繁输入,那我们得想想简单方法。比如我们直接在excel单元格里面输入1显示√&…

@value 默认值为null_JAVA8之妙用Optional解决判断Null为空的问题

引言在文章的开头,先说下NPE问题,NPE问题就是,我们在开发中经常碰到的NullPointerException.假设我们有两个类,他们的UML类图如下图所示在这种情况下,有如下代码user.getAddress().getProvince();这种写法,…

mysql百万数据根据索引查询_mysql创建多列索引查询百万表数据的性能优化经验分享...

最近发现最代码网站中的收到的评论,提到我的,心情被赞的查询异常缓慢,通过nginx日志发现响应时间快的在5s,慢的有13s,终于忍无可忍花时间来解决了。执行explain之后的截图如下:可以看到possible_keys中有很…

php用到的mysql语句_PHP中常用到的一些MySQL语句_php

在php开发中,经常会使用到mysql语句,下面就为您列举了一些经常使用的MySQL语句,希望对您平时的学习和开发工作能起到些许的作用。MySQL语句显示数据库或表:show databases;//然后可以use database_name;show tables;MySQL语句更改表名:alter …

mysql执行计划性能_MySQL SQL性能分析Explain执行计划

一. 执行计划返回信息详解①. 执行计划所含字段输出列含义id查询标识select_type查询类型table查询涉及的表partitions匹配到的分区信息type连接类型possible_keys可能选择的索引key实际使用的索引key_len实际使用的索引的长度ref和索引进行比较的列rows需要被检索的大致行数fi…

mysql定时作业_mysql 让一个存储过程定时作业的代码(转)

1、在mysql 中建立一个数据库 test1语句:create database test12、创建表examinfocreate table examinfo(id int auto_increment not null,endtime datetime,primary key(id));3 插入数据:insert into examinfo values(‘1‘,‘2011-4-23 23:26:50‘);4 …

table虚线边框_web前端工程师7天0基础到精通(TABLE+CSS制作《互联世纪网》)

项目七 项目实践:TABLECSS制作《互联世纪网》实践目标1、 熟悉CSS属性2、 熟练运用CSS属性控制网页样式3、 熟悉网页制作流程项目简介:通过上一章节的学习,我们了解了CSS样式能更加方便、有效地控制网页结构和布局网页元素,大大提…

mixamo骨骼_mixamo动作库的模型和动作绑定控制器的方法-上集

1.首先从网站下载带调好动作的文件fbx,我们将fbx场景文件转换成c4d场景文件。没转换之前转换之后选择场次,在文件菜单里找到当前场次到新文档!2.我们将模型重置为Tpose方便后续操作,没重置之前模型为k好的动作模式不能使用选中权重…

mysql 101_MySQL 调优/优化的 101 个建议!

原文:http://www.monitis.com/blog/101-tips-to-mysql-tuning-and-optimization/MySQL是一个强大的开源数据库。随着MySQL上的应用越来越多,MySQL逐渐遇到了瓶颈。这里提供 101 条优化 MySQL 的建议。有些技巧适合特定的安装环境,但是思路是相…

数据安全:保护个人隐私和企业机密的关键

在当今数字化时代,数据已经成为了一种宝贵的资源。无论是个人还是企业,都离不开数据的支持。然而,随着数据的不断增长和广泛应用,数据安全问题也日益突出。数据泄露、黑客攻击、网络诈骗等安全事件层出不穷,给个人和企…

python批量跑plsql_python实现自动化报表(Oracle/plsql/Excel/多线程)

# -*- coding: utf-8 -*-# Create time: 2019-10-16# Update time: 2019-11-28# Version: 1.0# Version: 2.0 增加多线程/出错自动重新运行模块# 导入模块import cx_Oracleimport osimport pandas as pdimport pandas.io.sql as sqlimport timeimport openpyxlimport xlwings a…

mysql 配置邮件_SQL 邮件配置篇

exec sp_configure show advanced options,1RECONFIGURE WITHOVERRIDEgoexec sp_configure database mail xps,1RECONFIGURE WITHOVERRIDEgo--2.创建邮件帐户信息EXECmsdb..Sysmail_add_account_spACCOUNT_NAME OCTMamiETL,--邮件帐户名称EMAIL_ADDRESS OCTMamiETL163.com,--发…

python 抽奖 配音乐_抖音上超好听的神曲音乐,Python教你一次性下载

不知道什么时候开始,中国出现了南抖音、北快手的互文格局(东市买骏马,西市买鞍鞯…)。刚才提到了,之前比较喜欢刷抖音,对于我这种佛系程序猿,看网上这些整容妹子基本一个样。喜欢抖音主要是两个初衷,学做菜…

mysql批量写入100万数据_Mysql数据库实践操作之————批量插入数据(100万级别的数据)-阿里云开发者社区...

第一种方法:使用insert into 插入从Redis每次获取100条数据,根据条件去插入到Mysql数据库中:条件:如果当前队列中的值大于1000条,则会自动的条用该方法,该方法每次获取从队列的头部每次获取100掉数据插入到…

mysql多客户端数据不同步_一种多终端设备上的数据同步方法

一种多终端设备上的数据同步方法【技术领域】[0001] 属于移动通信技术领域,特别是涉及基于离网环境下多种移动终端设备之间的数 据同步的方法。 技术背景[0002] 90年代未,数据同步始于有线连接,如MAC机作为数据中心,与终端设备(iP…

oem监控mysql_OEM12c 安装配置MySQL Plug-in用来监控MySQL

Plug-in--注册信息[roottest agent]# /oem/emcli setup -urlhttps://omsdb.localdomain:7301/em -usernamesysmanOracle Enterprise Manager 12c 3.Copyright (c) 1996, 2013 Oracle Corporation and/or its affiliates. All rights reserved.The configuration directory &quo…

怎么利用迭代器写入mysql_range()是什么?为什么不生产迭代器?

本篇文章给大家带来的内容是关于range()是什么?为什么不生产迭代器?有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。迭代器是 23 种设计模式中最常用的一种(之一),在 Python 中随处可见它的身影&#x…

java 流式_Java开发笔记(七十二)Java8新增的流式处理

通过前面几篇文章的学习,大家应能掌握几种容器类型的常见用法,对于简单的增删改和遍历操作,各容器实例都提供了相应的处理方法,对于实际开发中频繁使用的清单List,还能利用Arrays工具的asList方法给清单对象做初始化赋…