python-进程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-进程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2214字,纯文字阅读大概需要4分钟。
内容图文
![python-进程](/upload/InfoBanner/zyjiaocheng/937/cf021f5e943b4a99886c701a8ae358ec.jpg)
进程的概念:
- 进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令和本地变量。
- 进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时(操作系统执行之),它才能成为一个活动的实体,我们称其为进程。
- 进程是操作系统中最基本、重要的概念。是多道程序系统出现后,为了刻画系统内部出现的动态情况,描述系统内部各道程序的活动规律引进的一个概念,所有多道程序设计操作系统都建立在进程的基础上。
python中进程的操作
process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建。
1)进程的使用
import multiprocessing import time def work1(): for i in range(10): print("正在运行work1.....", i, "子进程编号:", multiprocessing.current_process().pid) time.sleep(0.5) if __name__ == '__main__': process_obj = multiprocessing.Process(target=work1, name="p1") print("主进程编号:", multiprocessing.current_process().pid) process_obj.start()
2)进程参数的传递
import multiprocessing import time def work1(a, b, c): print("参数:", a, b, c) for i in range(10): print("正在运行work1....") time.sleep(0.5) if __name__ == '__main__': # 1.args传递元祖 # process_obj = multiprocessing.Process(target=work1, args=(1, 2, 3)) # 2.kwargs传递字典 # process_obj = multiprocessing.Process(target=work1, kwargs={"a": 1, "b": 2, "c": 3}) # 3.args与kwargs混合传递 process_obj = multiprocessing.Process(target=work1, args=(1,), kwargs={"c": 3, "b": 2}) process_obj.start()
3)进程间全局变量不能共享
import multiprocessing import time g_num = 0 def work1(): global g_num for i in range(10): g_num += 1 print("work1.....", g_num) # 10 def work2(): print("work2.....", g_num) # 0 if __name__ == '__main__': p1 = multiprocessing.Process(target=work1) p2 = multiprocessing.Process(target=work2) p1.start() p2.start() time.sleep(2) print("主进程....", g_num) # 0
4)进程的守护
import multiprocessing import time def work(): for i in range(10): print("子进程运行中....", i) time.sleep(0.5) if __name__ == '__main__': p = multiprocessing.Process(target=work) # 进程守护:子进程与主进程的一种约束,当主进程结束时,子进程也随之结束。 p.daemon = True p.start() time.sleep(2) exit() print("xxxxxx")
内容总结
以上是互联网集市为您收集整理的python-进程全部内容,希望文章能够帮你解决python-进程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。