工作生活

Python线程

2019-07-01  本文已影响0人  歪瑞破费特

进程:在很多语言中没有方法可以创建线程,但是在python中可以创建并使用线程。

进程和线程的区别是:

        线程的父类消亡后,子线程也会消亡也不会调用父线程(python不会消亡但是无法调用父线程)

        进程的父类消亡后子进程不会消亡,会交给操作系统管理

        一个进程就是一个程序,在进行同步和异步操作时时进程间的通信(文件、socket传输)

        一个程序可以开多个线程,线程间的同步和异步(串行和并发)

        串行和并发、同步和异步时不同的概念,譬如可以开一个线程或进程进行异步或同步的串行或并发

来一个线程的小例子:

import time

from multiprocessing import Process

import multiprocessing

import os

def f(s):

    for i in range(100):

        time.sleep(2)

        # 获取当前进程id,和父进程id

        print(s, i + 1, os.getpid(), os.getppid(), multiprocessing.current_process().name)

if '__main__' == __name__:  # 判断是否当前文件是直接执行的文件

                            # 而不是导入文件

                            # 只有主文件可以开进程

                            # 然后无论主进程子进程代码都要写在判断的下面

    process = Process(None, target=f, args=('子进程',))

    process.name = "子进程1号"

    process.start()

    multiprocessing.current_process().name = "主进程0号"

    f("主进程")

上一篇下一篇

猜你喜欢

热点阅读