• 技术文章 >后端开发 >Python教程

    Python多线程编程(三):threading.Thread类的重要函数和方法

    2016-06-06 11:23:27原创333
    这篇文章主要介绍threading模块中的主类Thread的一些主要方法,实例代码如下:

    代码如下:


    '''
    Created on 2012-9-7

    @author: walfred
    @module: thread.ThreadTest3
    @description:
    '''
    import threading

    class MyThread(threading.Thread):
    def __init__(self):
    threading.Thread.__init__(self)

    def run(self):
    print "I am %s" % (self.name)

    if __name__ == "__main__":
    for i in range(0, 5):
    my_thread = MyThread()
    my_thread.start()

    name相关

    你可以为每一个thread指定name,默认的是Thread-No形式的,如上述实例代码打印出的一样:

    代码如下:


    I am Thread-1
    I am Thread-2
    I am Thread-3
    I am Thread-4
    I am Thread-5

    当然你可以指定每一个thread的name,这个通过setName方法,代码:

    代码如下:


    def __init__(self):
    threading.Thread.__init__(self)
    self.setName("new" + self.name)


    join方法

    join方法原型如下,这个方法是用来阻塞当前上下文,直至该线程运行结束:

    代码如下:


    def join(self, timeout=None):
    timeout可以设置超时
    timeout可以设置超时蚕食

    setDaemon方法

    当我们在程序运行中,执行一个主线程,如果主线程又创建一个子线程,主线程和子线程就分兵两路,当主线程完成想退出时,会检验子线程是否完成。如果子线程未完成,则主线程会等待子线程完成后再退出。但是有时候我们需要的是,只要主线程完成了,不管子线程是否完成,都要和主线程一起退出,这时就可以用setDaemon方法,并设置其参数为True。

    当然这上面列举的只是我们在编程是经常使用到的方法,更多方法,可以参见:Higher-level threading interface

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    上一篇:python获取指定网页上所有超链接的方法 下一篇:python统计字符串中指定字符出现次数的方法
    大前端线上培训班

    相关文章推荐

    • python操作MySQL数据库具体方法• python面向对象• python fabric实现远程操作和部署示例• 使用Python进行稳定可靠的文件操作详解

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网