码迷,mamicode.com
首页 > 编程语言 > 详细

多线程模块:thread

时间:2019-02-06 19:58:00      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:usr   div   pytho   bin   nbsp   函数   解释   多线程   对象   

thread 是一个比较低级别的模块,官方推荐我们使用 threading 替代 thread, thread 常见用法如下:

thread.start_new_thread(function, args):开启一个新的线程,接收两个参数,分别为函数和该函数的参数,相当于开启一个新的线程来执行这个函数,注意函数的参数必须是元组类型的,例子如下,开启两个线程同时输出声音和画面

#!/usr/bin/env python
#-*- coding:utf-8 -*-

import time
import thread

def fun(name, n):
    for i in range(n):
        print name, i
        time.sleep(1)

thread.start_new_thread(fun, (声音, 3))
thread.start_new_thread(fun, (画面, 3))

time.sleep(3)    # 这里要停止几秒,否则没等线程执行完进程就退出了
[root@localhost ~]$ python 1.py 
画面 0
声音 0
画面 1
声音 1
画面 2
声音 2

thread.allocate_lock():用于创建一个锁对象,我们可以同时开启多个线程,但是在任意时刻只能有一个线程在解释器运行,因此需要由全局解锁器(GIL)控制运行哪个线程,锁对象的常用方法如下:

    

 

 

 

 

 

    

多线程模块:thread

标签:usr   div   pytho   bin   nbsp   函数   解释   多线程   对象   

原文地址:https://www.cnblogs.com/pzk7788/p/10353953.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!