我应该使用哪个线程或进程?

Shravan辛格

我在树莓派上用python编写代码

while(true):
  functionA
  functionB

函数A本质上是一个以png格式捕获图像的命令。我不希望它是一个阻止功能。我希望我的代码继续执行功能B,与此同时,功能A会捕获图像并为下一次运行准备好数据。

我对使用线程还是进程感到困惑。

如果必须使用线程,它将何时停止?函数A完成执行后会停止一次吗?在那种情况下,我每次必须启动此线程时都需要调用start方法吗?还是我应该使用一个流程,我将如何进行处理,这意味着流程何时停止。

h0r53

让我们弄清楚线程和进程之间的区别。非正式定义:线程是作为流程的一部分执行的代码序列。一个进程可能包含许多线程,它们都共享相同的进程空间和虚拟内存空间。线程将在完成时结束(并自行终止),而不必结束父进程。从表面上看,应该使用一个线程来同步执行functionA。一个新的过程肯定会占用更多的资源,听起来是不必要的。另外,是的,如果您需要在线程完全完成执行之后再次执行该代码,则需要再次创建线程。另一方面,如果该方法似乎适合您正在执行的任务,则可以编写以无限循环的方式在新线程内执行的代码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章