threading模块 condition的生产者消费者模式 lock版的生产者消费者模式 queue的线程安全 threading类实现多线程 selenium关闭页面和浏览器 selenium页面等待 selenium打开多个页面和页面间的切换 多线程共享全局变量 selenium设置代理ip ...
分类:
编程语言 时间:
2019-07-02 22:51:51
阅读次数:
102
1、消息队列 “消息队列”是在消息的传输过程中保存消息的容器。消息队列,一般我们会简称它为MQ(Message Queue) 我们先不管消息(Message)这个词,来看看队列(Queue)。 队列是一种先进先出的数据结构。python用list 实现队列。 在Python里边,已经实现了不少的队列 ...
分类:
其他好文 时间:
2019-06-30 19:04:45
阅读次数:
111
在学习Celery之前,我先简单的去了解了一下什么是生产者消费者模式。 生产者消费者模式 在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为 ...
分类:
其他好文 时间:
2019-06-26 13:31:49
阅读次数:
85
概念、生产者消费者模式 1)当队列满的时候,插入元素的线程被阻塞,直达队列不满。 2)队列为空的时候,获取元素的线程被阻塞,直到队列不空。 生产者和消费者模式 生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者 ...
分类:
其他好文 时间:
2019-06-26 00:38:25
阅读次数:
121
消息队列主要分为两种,分别是生产者消费者模式和发布者订阅者模式,这两种模式 Redis 都支持。
分类:
其他好文 时间:
2019-06-12 11:21:21
阅读次数:
79
1.Java 通过阻塞队列实现生产者消费者模式 阻塞队列 Blocking Queue 当队列空时,获取元素的线程会等待 当队列满时,存储元素的线程会等待 提供的方法: 插入元素: add(e):抛出异常 offer(e):返回特殊值 put(e):一直阻塞 offer(e,time,unit):超 ...
分类:
其他好文 时间:
2019-05-17 12:07:13
阅读次数:
144
'''高级特性: 1. slice : 切片 2. iterable/iterator: 可迭代对象, 迭代器 3. list generation: list推导式 4. generator: 生成器''' # 综述'''slice: 切片 1. 定义: l_new = l[n:m:i] # l为 ...
分类:
编程语言 时间:
2019-05-09 13:29:19
阅读次数:
152
Celery 分布式任务队列 同步与异步 比如说你要去一个餐厅吃饭,你点完菜以后假设服务员告诉你,你点的菜,要两个小时才能做完,这个时候你可以有两个选择 一直在餐厅等着饭菜上桌 你可以回家等着,这个时候你就可以把你的电话留给服务员,告诉服务员等什么时候你的饭菜上桌了,在给你打电话 ? 所谓同步就是一 ...
分类:
其他好文 时间:
2019-05-08 20:16:09
阅读次数:
126
在生产者-消费者模式中,我们常常会使用到队列,这个队列在多个线程共享访问时存在互斥和竞争操作, 意味着每次访问都要加锁。如何更好的如何减少锁竞争次数呢 ?今天要介绍的双缓冲队列就是个不错的选择。 双缓冲队列就是冲着同步/互斥的开销来的。我们知道,在多个线程并发访问同一个资源的时候,需要特别注意线程的 ...
分类:
其他好文 时间:
2019-04-21 14:35:22
阅读次数:
164