py thread

#-*- coding:cp936 -*-
"""
避免使用thread 模块,。首先,更高级别的threading 模块更为先
进,对线程的支持更为完善,而且使用thread 模块里的属性有可能会与threading
出现冲突。其次,低级别的thread 模块的同步原语很少(实际上只有一个)
而threading 模块则有很多

另一个不要使用thread 原因是,对于你的进程什么时候应该结束完全没有控制,当主线程结束
时,所有的线程都会被强制结束掉,没有警告也不会有正常的清除工作。

函数           描述
thread 模块函数
start_new_thread(function,
args, kwargs=None) 产生一个新的线程,在新线程中用指定的参数和可选的
kwargs 来调用这个函数。
allocate_lock() 分配一个LockType 类型的锁对象
exit() 让线程退出
LockType 类型锁对象方法
acquire(wait=None) 尝试获取锁对象
locked() 如果获取了锁

thread模块提供了start_new_thread函数,用以创建线程。start_new_thread函数成功创建后还可以对其进行操作。

其函数原型:

    start_new_thread(function,atgs[,kwargs])

其参数含义如下:

    function: 在线程中执行的函数名

    args:元组形式的参数列表。

    kwargs: 可选参数,以字典的形式指定参数


"""
import thread
from time import sleep, ctime

def LOOP4():
 print 'start loop4 at :', ctime()
 sleep(4)
 print 'loop4 done at :', ctime()

def Loop2():
 print 'start loop2 at:', ctime()
 sleep(2)
 print 'loop2 done at :', ctime()
 
def Main():
 print 'all start at:', ctime()
 #LOOP4()
 #Loop2()
 """
  创建线程函数 thread.start_new_thread
 """
 thread.start_new_thread(LOOP4, ())
 thread.start_new_thread(Loop2, ())
 sleep(6) #等待子线程结束,主线程退出
 
 print 'all done at :', ctime()
 
if __name__ == '__main__':
 Main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值