python_线程读写操作一
线程读写操作
import threading,random,queue q = queue.Queue() alist=[] def shengchan():for i in range(10):alist.append(random.randint(1,20))q.put(alist)print('随机生成的十个数是%s'%alist) def xiaofei():with open('xiabo.txt','w+',encoding='utf8') as f:f.write(str(q.get()))f.seek(0)c =f.read()print(c) if __name__=='__main__':t1 = threading.Thread(target=shengchan)t2 = threading.Thread(target=xiaofei)t1.start()t2.start()
进程池相关
from multiprocessing import Pool # 导入模块进程池 import os, time, random # 导入windows系统,时间,随机数模块# print(random.random()) def task(name): # name是一个形参,先分析函数功能print('任务跑在 %s (%d)...' % (name, os.getpid())) # 打印了进程池传的参数i,还有进程编号start = time.time() # 记录一个开始时间time.sleep(random.random() * 3) # 随机0-3之间的数# print(random.random()*3) %s 字符串 %d 整型 %f 浮点型end = time.time() # 结束时间print('任务 %s 跑了 %0.2f时间' % (name, (end - start))) # 结束减去开始时间可以得出跑了多长时间算出函数运行时间if __name__ == '__main__':print('父进程是%d' % os.getpid()) # 获取当前进程编号IDp = Pool(4) # 使用进程池类方法创建了4个进程for i in range(1, 6): # 给4个进程分派了5个任务任务编号是1,2,3,4,5p.apply_async(task, args=(i,)) # apply_async 是异步非阻塞的。# 让进程池执行了task函数,传的参数是i# 意思就是:不用等待当前进程执行完毕,随时根据系统调度来进行进程切换。print('等待所有子进程跑完...')p.close() # 关闭进程池,因为后边有join必须保证子进程不再乱跑# time.sleep(2)# p.join() # 让所有的进程互相等待大家一起结束回家吃饭print('所有的子进程跑完了')
转载于:https://www.cnblogs.com/zhichao123/p/11240842.html
python_线程读写操作一相关推荐
- java 管道流的读写操作 用于两个线程之间的通信
/* java 管道流的读写操作 用于两个线程之间 PipedOutputStream PipedInputStream 连接起来就是一个管道 管道输出流可以向管道写入数据 ...
- java大文件读写操作
转载自:http://blog.csdn.net/akon_vm/article/details/7429245 RandomAccessFile RandomAccessFile是用来访问那些保存数 ...
- 【Android 高性能音频】AAudio 音频流 读写操作 ( 音频流读写数据 | 阻塞时间设定 | 注意事项 | AAudioStream_read | AAudioStream_write )
文章目录 I . AAudio 音频流 读写操作 简介 II . AAudio 音频流 读写操作 阻塞时间设定 III . AAudio 音频流 读取 固定帧数 操作 注意点 IV . AAudio ...
- QT5 文件读写操作
QFile Class 1.read读文件 加载文件对象 QFile file("文件地址"); 打开加载的文件file.open(打开方式); 操作文件 关闭打开的文件file ...
- xml编辑 html_【c# .net】Xml读写操作(XmlTextReader 类)
Xml读写操作(XmlTextReader 类) 1.XML简介 1)XML 和 HTML 的设计初衷 XML 被设计用来传输和存储数据 HTML 被设计用来显示数据 2)什么是 XML? XML 指 ...
- 最近总结了串口(COM)读写操作的三种方式
最近总结了串口(COM)读写操作的三种方式: 第1种方式是采用微软在.NET2.0推出了一个串口控件,SerialPort类,但必须是.NET2.0才可以 第2种方式是用API写串口通信,虽然难度高, ...
- Java读写操作西门子S7系列PLC
简介 Java实现操作西门子S7系列PLC,基于开源项目s7connect实现,使用的是基于以太网的TCP/IP实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性 ...
- 海康工业相机SDK + OpenCV实例(5):相机双线程读写缓存策略
海康工业相机SDK + OpenCV实例(5): 相机双线程读写缓存策略 文章目录 海康工业相机SDK + OpenCV实例(5): 相机双线程读写缓存策略 前言 一.双线程 二.缓存区容量为2的生产 ...
- 重叠IO--命名管道同时进行读写操作
弄了一整天了,总算初步完成以下功能: 创建一个命名管道作为服务器,以重叠IO的方式: 创建一个客户端,可同时启动多个客户端: 服务器线程中对接入的客户端进行同时读和写操作: 每个客户端对服务器在线程中 ...
最新文章
- 教程分享-Vim编辑器用法
- Git学习笔记03--git reset
- 连载《一个程序猿的生命周期》-《发展篇》 - 3.农民与软件工程师,农业与IT业...
- deepin--eclipse安装与配置
- 【Git】git的基本使用
- 网络登录_发布猫系统登录免费网络推广-绥芬河推广资讯
- c语言默认参数_5.1 C++有默认参数的函数
- vvv在线文档导出工具_一款真正实时的在线文档协作编辑工具,多人可同时对一份文件修改...
- 算法(15)-leetcode-explore-learn-数据结构-运用递归解决二叉树的问题
- 四、Web服务器——Session Cookie JSP入门 学习笔记
- 一个小白如何创建MYSQL数据表_MySQL小白扫盲(二)--建表、添加、查询
- cs1.5 linux服务端,CS1.5在linux上的配置
- python面向对象编程98讲_谈面向对象的编程(Python)
- 【EJB基础】开发一个简单的EJB应用程序
- 论文笔记:Securing Data With Blockchain and AI
- 【软件测试的重要性】
- SQL server中模式的定义和删除
- 荣耀9igoogle模式_创建自己的简单iGoogle小工具
- insert into 语句的四种写法
- 论文笔记:Dynamic GCN: Context-enriched Topology Learning for Skeleton-based Action Recognition
热门文章
- mysql按 当前时间和规定时间大小排序_为什么 MySQL 使用 B+ 树· Why#x27;s THE Design?(009)...
- oracle上浮下浮分析函数_Oracle分析函数简析
- mysql二进制日志重置_MySQL二进制日志备份和恢复详解
- 2100 反弹shell无法粘贴_技术成长日记-Vim实用技巧-4.6复制/删除/粘贴
- SpringSecurity AuthenticationManagerProviderManager
- java 泛型 类型形参(Type Parameters)Type Parameters 边界(Bound) 类型
- python __setattr__
- Requests redirect
- pytorch torch.nn.Embedding
- 用matlab录制声音然后进行读取和播放