具有可配置名称/输出参数的线程之间共享变量

时间:2018-11-29 18:41:10

标签: python-3.x multithreading class libraries output-parameter

我是Python的新手,它试图以一种可移植的,可自定义的库方式实现一些可重用的代码。有问题的代码已经被格式化为一个类和一个随之而来的函数。它旨在与Raspbian一起在Raspberry Pi上运行,并应不断从传感器获取读数并相应地更新变量。由于这种连续性,多次调用一个方法不太可行,无限循环会更好。为了使该传感器接口异步,我决定使用单独的线程,因此应将更新的传感器数据写入与主线程共享的变量。

总结一下/ TL; DR:

  • 我有一个格式化为类和函数的库
  • 所述功能应连续运行并返回数据
  • 它将被称为线程以异步运行
  • 数据将通过共享变量实时传递回主线程

通常,这不会有问题。但是,因为这应该是一个库,所以我要做的是使返回变量的名称/位置可自定义。理想情况下,我可以将参数传递给函数,然后将输出数据存储在此参数指定的变量中,而不是声明具有库预先确定的名称的全局变量并从库线程将输出写入该变量。

这样,我可以运行所述方法的多个实例,并通常使代码更可移植/可重用。在C ++中,通常通过将变量的指针传递给函数来完成这种事情。然后,该函数可以在指定的存储位置返回数据,并将其有效地用作输出参数。但是,据我所知,Python中没有这样的概念。

0 个答案:

没有答案