
模块学习
文章平均质量分 76
去海里喂鱼
这个作者很懒,什么都没留下…
展开
-
python模块学习(threading模块中的Thread类)
学习版本3.5.21.实例化线程对象并初始化,用start()方法可以启动线程__init__(self, group=None, target=None, name=None, args=(), kwargs=None, *, daemon=None)group是留着以后扩展用的,target是一个方法,name是线程名,args是位置变量的元组,kwargs是关键字变量原创 2017-11-08 18:52:00 · 3401 阅读 · 0 评论 -
python模块学习(multiprocessing模块)
学习版本3.5.2multiprocessing模块跟threading模块非常相似,只是multiprocessing用的进程而threading用的线程。Process类,这个类跟threading模块的Thread类非常相似。Process比Thread多一个pid,在进程没有start的时候pid为None。Process比Thread多了个terminate(self)方原创 2017-11-20 16:29:16 · 728 阅读 · 0 评论 -
python模块学习(queue模块的Queue类、PriorityQueue类和LifoQueue类)
学习版本3.5.2PriorityQueue类和LifoQueue类继承Queue类然后重写了_init、_qsize、_put、_get这四个类的私有方法Queue:先进先出队列的同步实现,通过双向列表实现的 # Initialize the queue representation def _init(self, maxsize): self.queu原创 2017-11-14 15:51:52 · 6496 阅读 · 0 评论 -
python模块学习(threading模块的方法)
学习版本3.5.2Lock() 创建一个Lock对象并返回RLock() 创建一个RLock对象并返回active_count() 返回当前未被阻塞的线程的数量current_thread() 返回当前的线程对象enumerate() 返回当前未被阻塞的对象的listsetprofile(func)和settrace(func) 设置一个function在所有的线程原创 2017-11-13 16:04:47 · 717 阅读 · 0 评论 -
python模块学习(threading模块中的Barrier类)
学习版本3.5.2Barrier类是设置了一个线程数量障碍,当等待的线程到达了这个数量就会唤醒所有的等待线程。__init__(self, parties, action=None, timeout=None) parties障碍要求的线程数量 action设置了的话会在突破障碍的时候被某一个被唤醒的线程调用 timeout给之后的wait()设置了个默认的等待时间原创 2017-11-13 15:13:57 · 2841 阅读 · 0 评论 -
python模块学习(threading模块中的Event类)
学习版本3.5.2Event类是用于通过事件来控制线程的执行情况。它内部存了个flag来控制线程的阻塞与否。clear(self) 把flag设置为falseset(self) 把flag设置为true,并唤醒所有被阻塞的线程is_set(self) 返回flag的状态wait(self, timeout=None) 当flag为fa原创 2017-11-13 14:22:50 · 1344 阅读 · 2 评论 -
python模块学习(threading模块中的Condition类)
学习版本3.5.2Condition类是用来处理复杂线程的同步问题的。__init__(self, lock=None) 初始化时候可以传入一个Lock对象,或者默认会生成一个RLock对象。Condition提供了Lock类中的acquire()方法和release()方法。notify(self, n=1) 唤醒n个等待的线程notify原创 2017-11-13 13:52:58 · 789 阅读 · 0 评论 -
python模块学习(threading模块中的Semaphore类和BoundedSemaphore类)
学习版本3.5.2Semaphore类和BoundedSemaphore类都是信号量类,每次有线程获得信号量的时候(即acquire())计数器-1,释放信号量时候(release())计数器+1,计数器为0的时候其它线程就被阻塞无法获得信号量。当计数器为设定好的上限的时候BoundedSemaphore就无法进行release()操作了,Semaphore没有这个限制检查。#/usr/b原创 2017-11-10 11:05:00 · 1670 阅读 · 0 评论 -
python模块学习(threading模块中的Timer类)
学习版本3.5.2Timer是Thread的子类,是一个定时器功能的类,就是几秒钟之后执行某个方法。__init__(self, interval, function, args=None, kwargs=None)相比与Thread,它多了一个cancel()方法,能在对象还没执行完成的时候停止这个对象。#/usr/bin/python3# -*- utf-8 -*-原创 2017-11-10 10:21:29 · 7017 阅读 · 0 评论 -
python模块学习(threading模块中的Lock类和RLock类)
学习版本3.5.2Lock类:一个线程对资源进行加锁操作之后其它线程就必须等它释放锁之后才能对该资源进行操作。acquire()与acquire_lock()都是加锁操作,release()与release_lock()都是释放锁操作,locked()与locked_lock()都是查询当前锁的状态。RLock类:线程对资源进行加锁操作后,该线程还能继续对该资源加锁,加锁和释放锁的数量需要原创 2017-11-09 17:12:45 · 565 阅读 · 0 评论 -
python模块学习(collections模块)
学习版本3.5.21.namedtuple,是tuple的子类,字面意思可命名的元组,就是用来创建一个给各个元素都加上了key的tuple。#/usr/bin/python3# -*- utf-8 -*-#学习版本3.5.2import collectionsif __name__ == "__main__": a = (1,2,3) newtuple = c原创 2017-11-16 13:00:43 · 454 阅读 · 0 评论