ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

python进程与线程的操作

2019-11-05 17:00:58  阅读:140  来源: 互联网

标签:p2 __ p1 run python 线程 进程


进程操作:

# project  :Python_Script
# -*- coding = UTF-8 -*-
# Autohr   :XingHeYang
# File     :processTest.py
# time     :2019/11/5  16:00
# Describe :进程操作
# ---------------------------------------
from multiprocessing import Process   # 导包
import time

def run(process_name):  #设计需要以进程执行的函数
    i = 0
    while i <= 5:
        print('进程 %s 执行:------>'%process_name)
        time.sleep(2)
        i += 1



if __name__ == '__main__':
    print('父进程开始')

    #创建进程对象,target需要传入的是需要以进程执行的函数名。
    # args需要以元组的形式传入执行函数的参数,如果只有一个参数也需要以元组的形式传入
    p1 = Process(target=run, args=('第一个',))
    p2 = Process(target=run, args=('第二个',))
    p3 = Process(target=run, args=('第三个',))
    #启动进程,并打印出进程id
    p1.start()
    print('p1进程id:',p1.pid)
    p2.start()
    print('p2进程id:',p2.pid)
    p3.start()
    print('p3进程id:',p3.pid)
    #子进程等待父进程结束后结束
    p1.join()
    p2.join()
    p3.join()

    print('父进程结束')

线程操作:

# project  :Python_Script
# -*- coding = UTF-8 -*-
# Autohr   :XingHeYang
# File     :Thread_Test.py
# time     :2019/11/5  16:28
# Describe :python 线程操作
# ---------------------------------------
#Content:线程:在python中有两个模块(_thread(低级的线程模块:表示的越接近底层),
# threading(高级的线程模块),threading相当于对_thread又进行了一次封装)

from threading import Thread
import time

def run(process_name):
    i = 0
    while i <= 10:
        print('线程 %s 执行:------>'%process_name)
        time.sleep(2)
        i += 1
if __name__ == '__main__':
    print('进程开始')

    #创建线程对象,传入的参数意义和进程相同
    p1 = Thread(target=run, args=('第一个',))
    p2 = Thread(target=run, args=('第二个',))
    p3 = Thread(target=run, args=('第三个',))
    #启动线程
    p1.start()
    p2.start()
    p3.start()
    #子线程等待父线程结束后结束
    p1.join()
    p2.join()
    p3.join()

    print('进程结束')

 

标签:p2,__,p1,run,python,线程,进程
来源: https://www.cnblogs.com/XhyTechnologyShare/p/11799628.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有