上一页 1 2 3 4 5 6 7 8 9 ··· 14 下一页
摘要: import threading g_num = 0 def fun(): global g_num for i in range(10000000): mutexFlag = mutex.acquire(True) if mutexFlag: g_num += 1 mutex.release() ... 阅读全文
posted @ 2018-03-22 23:01 Bob__Zhang 阅读(118) 评论(0) 推荐(0) 编辑
摘要: #1.多线程开发可能遇到的问题 ''' 假设两个两个线程t1\t2都要对num进行操作(增1),t1和t2都各自对num修改10次,num最终的值为增20 ''' import threading,time #全局变量 g_num = 0 def w1(): global g_num for i in range(100000000): g_num+=1 ... 阅读全文
posted @ 2018-03-22 22:59 Bob__Zhang 阅读(200) 评论(0) 推荐(0) 编辑
摘要: #在threading模块当中定义了一个Lock类,可以方便的使用锁定: # #1.创建锁 # mutex = threading.Lock() # # #2.锁定 ''' mutex.acquire(True/False) True:如果所要获取的资源已经"锁定",表示当前线程处地等待(阻塞),直到获取到这个锁为止--默认值 False:不阻塞,即不管本次调用能够成功上锁,都不会卡在这,而是... 阅读全文
posted @ 2018-03-22 22:59 Bob__Zhang 阅读(881) 评论(0) 推荐(0) 编辑
摘要: #多进程VS多线程 #登录多个qq账号就是多个进程,正常情况下一个软件就是一个进城费 #打开两个以上qq聊天窗口就是多线程 #功能: #进程,能够完成多任务,比如一台能够同时运行多个qq #线程,能够完成多任务,比如一个qq中的多个聊天窗口 #定义 #进程是系统进行资源分配和调试的一个独立单位 #线程是进程的一个实体,是CPU调用和分派的基本单位,它比进程更小的能够独立运行的基本单位 #线程基... 阅读全文
posted @ 2018-03-22 22:57 Bob__Zhang 阅读(192) 评论(0) 推荐(0) 编辑
摘要: import copy a = 11 print(id(a))#和下面的id号不一样 b = a a = 12 print(b,id(a),id(b))#11 1810457152 1810457120 #输出结果:11 无影响 #浅拷贝copy.copy #1.=赋值 download_list = [11,22,33] copy_list = download_list downlo... 阅读全文
posted @ 2018-03-22 22:56 Bob__Zhang 阅读(118) 评论(0) 推荐(0) 编辑
摘要: #列表当做实参传递到线程中 import threading,time,random,copy def work1(download_list,finish_list): #每次从当前下载列表当中去取第一个元素进行下载 while True: file = download_list[0] print("--in work1--download:%... 阅读全文
posted @ 2018-03-22 22:55 Bob__Zhang 阅读(276) 评论(0) 推荐(0) 编辑
摘要: #多线程---全局变量---共享全局变量 #多线程可以对全局变量进行修改,修改后的结果会影响下一个线程 #进程不可以共享全局变量,子进程是复制父进程的全局变量,修改后互不影响 from threading import Thread import time,random g_num = 100 def work1(): global g_num for i in range(3... 阅读全文
posted @ 2018-03-22 22:54 Bob__Zhang 阅读(1271) 评论(0) 推荐(0) 编辑
摘要: import threading #线程名字 # class MyThread(threading.Thread): # # def run(self): # print("%s线程正在下载..."%self.name) # # if __name__ == "__main__": # t = MyThread(name="downloadThread") # ... 阅读全文
posted @ 2018-03-22 22:53 Bob__Zhang 阅读(150) 评论(0) 推荐(0) 编辑
摘要: #传参数 import threading class MyThread(threading.Thread): def __init__(self,fileName): threading.Thread.__init__(self) self.fileName = fileName print("开启线程,下载%s文件"%fileName... 阅读全文
posted @ 2018-03-22 22:51 Bob__Zhang 阅读(225) 评论(0) 推荐(0) 编辑
摘要: #用自己定义的线程完成 import threading,time,random class sing(threading.Thread): def run(self): for i in range(3): print("正在唱歌%d"%i) time.sleep(random.random()) class dance... 阅读全文
posted @ 2018-03-22 22:50 Bob__Zhang 阅读(127) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 14 下一页