python之多线程threading模块

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#_*_coding:utf-8_*_
import  threading
from  time  import  sleep,ctime
 
#秒数
loops  =  [ 4 , 2 ]
 
#这个函数是模拟一个实实在在是用来干活的函数
def  loop(nloop,nsec):
     print  "函数%s 启动时间:%s 等待秒数:%s \n"  % (nloop,ctime(),nsec)
     sleep(nsec)  #等待时间
 
 
def  main():
     print  "主线程在 %s 开始启动...:"  %  ctime()
     threads  =  []  #这个列表用来存放创建的线程
     nloops  =  range ( len (loops))   #把全局变量中的loops列表引进来,所生成的局部变量nloops作为索引
     #顾nloops存储的是[0,1]
 
 
     for  in  nloops:
         =  threading.Thread(target = loop,args = (i,loops[i]))  #创建线程
         threads.append(t)    #创建到线程累加存放到列表threads中
 
     for  in  nloops:
         threads[i].start()  #所有线程创建完之后,便利存放线程的列表,一起启动线程
 
     for  in  nloops:
         threads[i].join()   #程序挂起,直到线程结束,再也不用管理分配锁,获得锁,释放锁,检查锁到状态等令人纳闷到问题,只需调用join()函数就可以啦
 
     print  "所有函数完成时间:" , ctime()
 
if  __name__  = =  '__main__' :
         main()

运行结果

/usr/bin/python2.7 /home/toby/PycharmProjects/SOMS/test2.py
主线程在 Wed Mar  1 19:59:53 2017 开始启动...:
函数0 启动时间:Wed Mar  1 19:59:53 2017 等待秒数:4 

函数1 启动时间:Wed Mar  1 19:59:53 2017 等待秒数:2 

所有函数完成时间: Wed Mar  1 19:59:57 2017


本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/1902532

相关文章
|
13天前
|
安全 Java 数据处理
Python网络编程基础(Socket编程)多线程/多进程服务器编程
【4月更文挑战第11天】在网络编程中,随着客户端数量的增加,服务器的处理能力成为了一个重要的考量因素。为了处理多个客户端的并发请求,我们通常需要采用多线程或多进程的方式。在本章中,我们将探讨多线程/多进程服务器编程的概念,并通过一个多线程服务器的示例来演示其实现。
|
23天前
|
算法 数据处理 Python
Python并发编程:解密异步IO与多线程
本文将深入探讨Python中的并发编程技术,重点介绍异步IO和多线程两种常见的并发模型。通过对比它们的特点、适用场景和实现方式,帮助读者更好地理解并发编程的核心概念,并掌握在不同场景下选择合适的并发模型的方法。
|
6天前
|
调度 Python
Python多线程、多进程与协程面试题解析
【4月更文挑战第14天】Python并发编程涉及多线程、多进程和协程。面试中,对这些概念的理解和应用是评估候选人的重要标准。本文介绍了它们的基础知识、常见问题和应对策略。多线程在同一进程中并发执行,多进程通过进程间通信实现并发,协程则使用`asyncio`进行轻量级线程控制。面试常遇到的问题包括并发并行混淆、GIL影响多线程性能、进程间通信不当和协程异步IO理解不清。要掌握并发模型,需明确其适用场景,理解GIL、进程间通信和协程调度机制。
24 0
|
21天前
|
数据采集 Java API
python并发编程: Python使用线程池在Web服务中实现加速
python并发编程: Python使用线程池在Web服务中实现加速
18 3
python并发编程: Python使用线程池在Web服务中实现加速
|
24天前
|
Java 测试技术 Python
Python开启线程和线程池的方法
Python开启线程和线程池的方法
17 0
Python开启线程和线程池的方法
|
30天前
|
并行计算 Python
Python中的并发编程:多线程与多进程的比较
在Python编程中,实现并发操作是提升程序性能的重要手段之一。本文将探讨Python中的多线程与多进程两种并发编程方式的优劣及适用场景,帮助读者更好地选择合适的方法来提高程序运行效率。
|
1月前
|
Python
python中导入模块/包的几种方式
python中导入模块/包的几种方式
25 0
|
1月前
|
Python
请描述 Python 中的模块和包的概念,以及如何导入和使用它们。
请描述 Python 中的模块和包的概念,以及如何导入和使用它们。
23 3
|
8天前
|
Python
python学习14-模块与包
python学习14-模块与包
|
1月前
|
开发工具 git Python
深入理解Python中的模块和包
深入理解Python中的模块和包
31 0

热门文章

最新文章