上一页 1 2 3 4 5 6 7 8 ··· 11 下一页
摘要: 无论是进程还是线程,都遵循:守护xx会等待主xx运行完毕后被销毁。需要强调的是:运行完毕并非终止运行 阅读全文
posted @ 2019-09-02 21:26 谭文章 阅读(114) 评论(0) 推荐(0) 编辑
摘要: # 正确的学习方法 # input # output # correct 纠正 # 线程 # 线程是进程中的执行单位 # 线程是cpu执行的最小单位 # 线城之间资源共享 # 线程的开启和关闭以及切换的时间开销远远小于进程 # 线程本身可以在同一时间使用多个cpu# python 与 线程 # Cp 阅读全文
posted @ 2019-09-02 09:40 谭文章 阅读(125) 评论(0) 推荐(0) 编辑
摘要: # 进程 是 最小的 内存分配单位# 线程 是 操作系统调度的最小单位# 线程直接被CPU执行,进程内至少含有一个线程,也可以开启多个线程 # 开启一个线程所需要的时间要远远小于开启一个进程 # 多个线程内部有自己的数据栈,数据不共享 # 全局变量在多个线程之间是共享的# GIL锁(即全局解释器锁) 阅读全文
posted @ 2019-09-01 15:06 谭文章 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-09-01 15:02 谭文章 阅读(141) 评论(0) 推荐(0) 编辑
摘要: # 管道# 数据的共享 Manager dict list# 进程池 # cpu个数+1 # ret = map(func,iterable) # 异步 自带close和join # 所有结果的[] # apply # 同步的:只有当func执行完之后,才会继续向下执行其他代码 # ret = ap 阅读全文
posted @ 2019-09-01 09:38 谭文章 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 进程池的返回值是进程池特有的: # p = Pool()# p.map(funcname,iterable) 默认异步的执行任务,且自带close和join# p.apply 同步调用的# p.apply_async 异步调用 和主进程完全异步 需要手动close 和 join 进程池的回调函数: 阅读全文
posted @ 2019-08-31 17:59 谭文章 阅读(152) 评论(0) 推荐(0) 编辑
摘要: # from multiprocessing import Manager,Process # def main(dic): # dic['count'] -= 1 # print(dic) # # if __name__ == '__main__': # m = Manager() # dic=m.dict({'count':100}) # p_lst = [] # p = Process(ta 阅读全文
posted @ 2019-08-31 17:56 谭文章 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-08-31 13:02 谭文章 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 在两个进程里,仍然可以通信 消息中间件 管道实现生产者消费者模型 # pipe 数据不安全性# IPC# 加锁来控制操作管道的行为 来避免进程之间争抢数据造成的数据不安全现象 # 队列 进程之间数据安全的# 管道 + 锁 阅读全文
posted @ 2019-08-31 10:32 谭文章 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 只和字符串有关系 带上大写就是非 [\W\w]什么都能匹配上 匹配结尾 先规则在量词,量词只约束它紧跟着的规则 爬虫的例子: # url从网页上把代码搞下来# bytes decode ——> utf-8 网页内容就是我的待匹配字符串# ret = re.findall(正则,带匹配的字符串) #r 阅读全文
posted @ 2019-08-30 21:20 谭文章 阅读(124) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 11 下一页