The processing.Process class follows the API of threading.Thread.

上面是python doc的原话。

安装processing模块的时候遇到找不到python.h这个文件的问题。

网上搜了很多资料。都说是缺少python-dev。但是使用apt-get却一直提示缺少Python.h。我是这样解决的:

1、安装aptiude

2、使用aptitude安装python-dev

3、easy_install安装processing模块。

------------------------------------------------------

下面使用proessing来做一些例子。

fromprocessingimportProcess,Queue

importtime

deff(q):

x=q.get()

print"Process number %s,sleeps for %s seconds."% (x,x)

time.sleep(x)

print"Process number %s finished!"% x

q=Queue()

foriinrange(10):

q.put(i)

i=Process(target=f,args=[q])

i.start()

print"main process joins on queue"

i.join()

print"main finished!"

上面的代码中, 开启十个进程,每个进程休眠相应的时间然后退出。请注意其中的i.join()的用法。

Process中join函数和Queue中的join函数是一样的【Queue的join参考这里】。都是等待运行结束。

至于这里使用i.join(),意思是说,当运行到i.join()这句话的时候,i已经是最后开启的那个进程了。也就是休眠时间最久的那个进程。当它结束了,其他比它start早的进程早都结束了。所以当最后的这个进程结束的时候,主进程也可以结束了。

其实这里最好使用循环,然每一个进程都join一下。

-----------------------------------------------

还有一个需要注意的地方:刚刚用的是processing中的Queue。

processing模块中的Queue和Queue模块中的Queue有什么区别呢?

先看下Queue模块中的Queue:

Help on module Queue:

NAME

Queue - A multi-producer, multi-consumer queue.

从doc可以看出来,Queue模块中的Queue是多线程安全的。需要使用task_done来标识一个Queue内元素处理完毕。

再看processing中的Queue:

Help on function Queueinmodule processing:

Queue(maxsize=0)

Returns a queue object implemented using a pipe

(END)

processing中的Queue是通过pipe实现的队列。pipe?怎么回事呢?【待续】

processing软件使用python_Python processing学习相关推荐

  1. 和我一起学习Processing全系列--01 Processing 介绍

    本系列文章参考官方网站,<爱上processing>和<Processing编程学习指南(第2版)> 一:Processing 是什么? Processing是一种交互式的软件 ...

  2. 成都软件工程师python_为什么每个软件工程师都应该学习Python?

    为什么要写一篇文章告诉大家去学习python?最受欢迎的编程语言不是JAVA么? 的确,TIOBE指数显示JAVA依然是最受欢迎的编程语言,但是Python的崛起不可小觑,请看4月份最新的TIOBE指 ...

  3. 北京大学软件与微电子学院学习经验文章集78篇和1个专题

    北京大学软件与微电子学院学习经验文章集78篇和1个专题 来自:http://www.ithao123.com/pkusoftware/ 北软专题:老李语录 1.学学北大软件学院吧,到战场上去培养将军 ...

  4. 五年高考三年模拟暗部软件库_8款实用的手机学习软件推荐,高中生学习必备!...

    实用类的学习软件其实有挺多的,下面就自己日常收集和整理的软件中挑选一些出来分享一下吧! 文末有获取方式 1.化学方程式 学好数理化,走遍天下都不怕! 这款化学方程式软件包含方程式.俗称.颜色.性质和元 ...

  5. 【基于UML软件建模的在线学习平台】

    文章目录 开发背景与意义 一.需求分析 学生功能结构 教师功能结构 二.部分课程设计报告 总结 开发背景与意义 随着教育事业的改革,国家对高等教学逐渐得到重视.但是传统的高校间教学教育无法在学生与老师 ...

  6. 中学生听说能力测试软件,初中生学习软件排行榜 适合初中生学习的APP推荐

    初中生学习软件排行榜 适合初中生学习的APP推荐2018-09-06 16:02:47文/张雪娇 初中学习软件有哪些是好用的,很多初中生想要知道哪一些是适合自己目前阶段学习的软件,下面初三网小编就为大 ...

  7. vivo软件开发马拉松大赛学习总结

    vivo软件开发马拉松大赛学习总结 后端技术 部署 使用到的docker镜像 MySQL部署 后端项目部署 jenkinsfile swagger配置 跨域解决 其他 后端技术 部署 后端部分是使用d ...

  8. 北京大学软件与微电子学院学习经验文章集

    北京大学软件与微电子学院学习经验文章集 1.来北大软院的一些感想 2.给管理技术系新生们的一点建议 1.软微一年ABCD 2.谈论:在软院必须在乎的15件事 更多 [@more@] 来自 " ...

  9. 托软件,本软件仅供研究学习代码交流

    [软件仅供休闲娱乐,请勿用于商业及非法用途,本软件仅供研究学习代码交流,发现一款很不错的托自动上下分软件,支持所有的功能等多项功能,实在是居家旅行必备神器] 本Markdown编辑器使用StackEd ...

  10. anaconda学习python_python深度学习笔记1-Anaconda软件安装

    ----工欲善其事必先利其器 一.Anaconda介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项.因为包含了大量的科学包,An ...

最新文章

  1. [UWP小白日记-10]程序启动屏(ios解锁既视感)
  2. (转)【前端模板之路】一、重构的兄弟说:我才不想看你的代码!把HTML给我交出来!...
  3. Bootstrap--圆角图片`圆形图
  4. 深入Java中文问题及最优解决方法-下(转)
  5. java共享租车信息管理系统jsp源码
  6. android tv nugat,GitHub - GongXunYoung/Android-tv-widget: Android tv,盒子,投影仪 控件
  7. (61)Verilog HDL模块例化Verilog模块
  8. sublime运行node.js报[Decode error - output not cp936]错误
  9. CSS:实现流光按钮类
  10. SpringBoot源码篇:Spring5内置tomcat实现code-based的web.xml实现
  11. windows2008r2安装笔记
  12. 抽数,数据抽取,增量数据的抽取方式
  13. MSE 支持 Apache Shenyu 网关实现全链路灰度
  14. qlv转mp4失败 解决方法
  15. Lecture05:随机市场出清
  16. iOS app 打包发布
  17. srs10流程图_srs技术文档说明
  18. 尚德SEP英语测试被部分国际高校认可为本硕入学测试
  19. API接口函数的应用
  20. PC版微信多开,不用软件,自己动手丰衣足食。

热门文章

  1. 钉钉群机器人通知中的图片,突然不显示了
  2. 学美容化妆培训学校到哪里最好
  3. NTFS与FAT32区别
  4. 电脑版微信多开,只需要三步
  5. u-boot-1.1.6源码分析
  6. 推荐几个好用串口调试、检测的工具
  7. DataStreamer Exception
  8. NYOJ 234 吃土豆(基础dp)
  9. linux rm rf 无法删除文件夹,linux下的文件用root用户rm -rf命令无法删除解决方案
  10. B站风清扬-Java面试总结