线程与进程

Posted treelight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程与进程相关的知识,希望对你有一定的参考价值。

一、线程

1、启动方法:

方法一:

步骤1、实例化,t1 = threading.Thread(targe=func, args=())

步骤2、t1.start()

例子:

技术图片
import threading
import time


def run(n):
    print(in the task %s % n)
    print(当前线程是\033[31;1m%s\033[0m % threading.current_thread())
    time.sleep(3)


t1 = threading.Thread(target=run, args=(1,))  # 注意args参数最后要加逗号
t2 = threading.Thread(target=run, args=(2,))
t1.start()
t2.start()
print(当前活跃的线程有\033[31;1m%s\033[0m个 % threading.active_count())
print(当前线程是\033[31;1m%s\033[0m % threading.current_thread())
View Code

方法二:

步骤1、定义一个类,继承threading.Thread,并且重写run

步骤2、使用实例中的start()方法

例子:

技术图片
import threading
import time


class MyThread(threading.Thread):
    def __init__(self, n):
        super(MyThread, self).__init__()
        self.n = n

    def run(self):
        print(现在在线程%s上 % self.n)
        time.sleep(2)


t1 = MyThread(1)
t2 = MyThread(2)
t1.start()
t2.start()
View Code

 

以上是关于线程与进程的主要内容,如果未能解决你的问题,请参考以下文章

八.多进程与多线程

多线程编程

[转帖]Linux系统进程的知识总结,进程与线程之间的纠葛...

线程浅析

LINUX操作系统知识:进程与线程详解

Linux系统进程的知识总结,进程与线程之间的纠葛...