python之路--关于线程的一些方法】的更多相关文章

一 . 线程的两种创建方式 from threading import Thread # 第一种创建方式 def f1(n): print('%s号线程任务'%n) def f2(n): print('%s号线程任务'%n) if __name__ == '__main__': t1 = Thread(target=f1,args=(1,)) t2 = Thread(target=f2,args=(2,)) t1.start() t2.start() print('主线程') # 第二种创建方式…
进程和线程 既然看到这一章,那么你肯定知道现在的系统都是支持“多任务”的操作,比如: Mac OS X,UNIX,Linux,Windows等. 多任务:简单地说就是同时运行多个任务.譬如:你可以一边看小电影,一边用word写感受,在一边录制,这就是多任务,至少同时有3个任务正在运行.还有很多任务在后台运行,只是桌面上没有显示而已. 现在,多核CPU已经很普遍了,但是,即使在过去单核的时代,也是可以执行多任务的.由于CPU执行代码都是顺序执行的,那么单核CPU是怎么执行多任务的呢?答案就是:操作…
一.线程 1.创建线程 2.主线程是否等待子线程 t.setDaemon(Ture/False):默认是false,等待子线程完成,ture,表示不等待子线程结束 3.主线程等待,子线程执行 join(),一直等到子线程结束 join(3),最多等待3秒,如果子线程需要两秒,则等待2秒. 4.线程锁 R.rlock() #!/usr/bin/env python #coding:utf-8 import threading import time gl_num = 0 lock = thread…
概念: 什么是线程池? 诸如web服务器.数据库服务器.文件服务器和邮件服务器等许多服务器应用都面向处理来自某些远程来源的大量短小的任务.构建服务器应用程序的一个过于简单的模型是:每当一个请求到达就创建一个新的服务对象,然后在新的服务对象中为请求服务.但当有大量请求并发访问时,服务器不断的创建和销毁对象的开销很大.所以提高服务器效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是一些很耗资源的对象创建和销毁,这样就引入了"池"的概念,"池"的概念使得人们可以定制…
关于多任务的理解, 代码要执行,首先得变成机器认识的东西执行,那么需要解释器.那么执行按道理,一段程序在这里就具体来说一段代码的执行吧,我们知道代码的执行是从上至下按顺序执行,那么这里有条件分支结构,循环结构,这里不再说这些结构.当你想让两个任务同时执行即两个函数同时执行,那么就必须用到多线程的技术,否则只会按照函数调用的顺序从上至下按顺序执行,一个函数执行完了,才会跑下一个函数.所以采用多线程技术.以下为一个多线程的代码例子,步骤为导入threading模块,线程与函数绑定,启动线程.这样就完…
参考博客: 线程.进程.协程: http://www.cnblogs.com/wupeiqi/articles/5040827.html http://www.cnblogs.com/alex3714/articles/5230609.html IO多路复用: http://www.cnblogs.com/wupeiqi/articles/5040823.html 课堂笔记: - 线程进程介绍 1. 工作最小单元是线程 2. 应用程序 -> 至少有一个进程 -> 至少有一个线程 3. 应用场景…
1.私有成员公有成员 1.1 类的私有属性 # class A: # # name = '周道镕' # __name = 'zdr' # 私有类的属性 # # def func(self): # print(self.name) # print(self.__name) # obj = A() # obj.func() 结论:在类的内部可以访问 # class A: # name = '周道镕' # __name = 'zdr' # 私有类的属性 # # def func(self): # pa…
一.线程和进程概述 1.python线程的Event 2.python线程其他和队列以及生产者消费者 3. 使用multprocessing创建进程 4.进程间数据共享方式——sharedmeory(一) 4.进程间数据共享方式——serverprocess(二) 5.简单使用进程池…
版本一 #!/usr/bin/env  python # --*--coding:utf-8 --*-- import Queue import threading class ThreadPool(object): #创建类     def __init__(self, max_num=20):#进程函数,默认最大20个进程         self.queue = Queue.Queue(max_num)#生成进程         for i in xrange(max_num):#循环进程…
一.线程池 很久(python2.6)之前python没有官方的线程池模块,只有第三方的threadpool模块, 之后再python2.6加入了multiprocessing.dummy 作为可以使用线程池的方式, 在python3.2(2012年)之后加入了concurrent.futures模块(python3.1.5也有,但是python3.1.5发布时间晚于python3.2一年多),这个模块是python3中自带的模块,但是python2.7以上版本也可以安装使用. 下面分别介绍下各…