上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 56 下一页

2020年3月28日

摘要: #共享数据,硬盘(文件),Lock --不推荐 from multiprocessing import Process,Lock import time,json,random import os def search(): dic=json.load(open('db.txt')) print(' 阅读全文
posted @ 2020-03-28 21:58 happygril3 阅读(127) 评论(0) 推荐(0)
摘要: 加锁保护数据安全,但导致加锁部分串行执行,效率降低 --加锁后要考虑释放锁,不建议使用 from multiprocessing import Process,Lock import time def work(lock): mutex.acquire() print("target %s is r 阅读全文
posted @ 2020-03-28 21:54 happygril3 阅读(136) 评论(0) 推荐(0)
摘要: 1.守护进程:主进程代码结束,守护进程立马结束 #守护进程 daemon:print('主')执行完成后,p1就结束掉 from multiprocessing import Process import time #并发,在同一个终端打印 def work(): print("123" ) tim 阅读全文
posted @ 2020-03-28 21:04 happygril3 阅读(155) 评论(0) 推荐(0)
摘要: 1.主进程和子进程的current_thread都显示为MainThread,但含义不同 主进程的MainThread表示主进程的主线程名称 子进程的MainThread表示子进程的主线程名称 #进程的current_thread from threading import Thread,curre 阅读全文
posted @ 2020-03-28 20:39 happygril3 阅读(746) 评论(0) 推荐(0)
摘要: 1.主进程和子进程之间的pid不同(子进程的ppid为主进程的pid) #pid,ppid from multiprocessing import Process import time import os #并发,在同一个终端打印 def work(): print("parent:%s targ 阅读全文
posted @ 2020-03-28 20:33 happygril3 阅读(383) 评论(0) 推荐(0)
摘要: 进程之间数据不共享,线程之间数据共享 (1)进程之间数据不共享:主进程和子进程数据不共享 from multiprocessing import Process n=100 def work(): global n n=0 if __name__=="__main__": p=Process(tar 阅读全文
posted @ 2020-03-28 20:25 happygril3 阅读(266) 评论(0) 推荐(0)
摘要: #join方法[并行]:主进程等待子进程运行完成 from multiprocessing import Process import time def work(name): print("target %s is running" %name) time.sleep(2) print("targ 阅读全文
posted @ 2020-03-28 20:20 happygril3 阅读(150) 评论(0) 推荐(0)
摘要: 1.进程: 优点:可以利用多核,计算密集型 缺点:开销大,时间慢 2.线程: 优点:开销小,时间快,IO密集型 缺点:不可以利用多核 #开启进程方式1 from multiprocessing import Process import time def work(name): print("tar 阅读全文
posted @ 2020-03-28 20:15 happygril3 阅读(204) 评论(0) 推荐(0)

2020年3月25日

摘要: #进程同步:加锁(串行) 不建议使用,因为考虑到要释放锁 from multiprocessing import Process,Lock import time def work(lock): lock.acquire() print("target %s is running" %os.getp 阅读全文
posted @ 2020-03-25 17:15 happygril3 阅读(111) 评论(0) 推荐(0)
摘要: 队列:进程间通信(IPC(inter-process communication),管道+锁 1. q.put方法用以插入数据到队列中,put方法还有两个可选参数:blocked和timeout。blocked为True(默认值) 如果超时,会抛出Queue.Full异常。 如果blocked为Fa 阅读全文
posted @ 2020-03-25 17:09 happygril3 阅读(195) 评论(0) 推荐(0)
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 56 下一页

导航