Python中的进程和线程

Python中的进程和线程,第1张

概述frommultiprocessingimportProcessprocess=Process(target=函数,name=进程的名字,args=(给函数传递的参数))process.start()启动进程并执行任务process.run()只是执行了任务但是没有启动进程process.terminate()终止进程importthreadingfrommultip
from multiprocessing import Processprocess = Process(target=函数,name=进程的名字,args=(给函数传递的参数))process.start()     启动进程并执行任务process.run()       只是执行了任务但是没有启动进程process.terminate()     终止进程
import threadingfrom multiprocessing import Processfrom multiprocessing.pool import Poolfrom multiprocessing.queues import Queuefrom threading import Thread, Lockfrom time import sleepdef task1(s):    while True:        print('这是任务1')        sleep(s)def task2(s):    while True:        print('这是任务2')        sleep(s)if __name__ == '__main__':    p1 = Process(target=task1, args=(1,))    p1.start()    p2 = Process(target=task2, args=(2,))    p2.start()# 进程,线程# Process类# 创建进程def func(n):    passp = Process(target=func, name='', args=(), kwargs='')p.start()# 自定义进程class MyProcess(Process):    def run(self):        passp = MyProcess()p.start()# 进程数据共享:n = 0# 进程池:Poolp = Pool(5)# 阻塞式  apply(func,args,kwargs)# 非阻塞式 apply_async(func,args,kwargs,callback=函数)# 进程间通信q = Queue(4)q.put()  # 放数据q.get()  # 取数据q.qsize()  # 获取队列中的数据个数q.empty()  # 判断队列是否为空q.full()  # 判断队列是否已经满了# 线程t = Thread(target=func, name='', args=(), kwargs='')t.start()# GIL:全局解释器锁# Python中的线程是伪线程# 线程同步lock = Lock()List1 = [0] * 10def task1():    # 获取线程锁,如果已经上锁了,则等待锁的释放    lock.acquire()  # 请求锁    for i in range(len(List1)):        List1[i] = 1        sleep(0.5)    lock.release()  # 释放锁def task2():    lock.acquire()    for i in range(len(List1)):        print('---->', List1[i])        sleep(0.5)    lock.release()if __name__ == '__main__':    t1 = threading.Thread(target=task1)    t2 = threading.Thread(target=task2)    t2.start()    t1.start()    t2.join()    t1.join()    print(List1)
总结

以上是内存溢出为你收集整理的Python中的进程和线程全部内容,希望文章能够帮你解决Python中的进程和线程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1189426.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存