简介
本篇教程的目的主要是说明在MicroPython中如何向线程函数传递参数。有关创建线程的介绍请参见此篇先前的帖子:ESP32 MicroPython教程:创建线程 。
测试使用的是DFRobot的ESP-WROOM-32设备,该设备集成在FireBeetle ESP32开发板中。使用的MicroPython IDE是uPyCraft。
代码
[AppleScript] 纯文本查看 复制代码import _thread
然后,我们将声明thread函数。在本例中,我们将指定其接收两个输入参数,第一个参数是线程函数描述,第二个参数是一个计数器。
[AppleScript] 纯文本查看 复制代码def threadFunction(description, count):
## Thread function code
这个线程函数的逻辑非常简单。我们将先打印出线程描述参数,然后通过循环每次打印一条消息。循环的迭代次数等于线程函数的第二个参数(计数器值)。
[AppleScript] 纯文本查看 复制代码def threadFunction(description, count):
print(description)
i = 0
while i < count:
print("Iteration: " + str(i) )
i=i+1
在前篇帖子中介绍过,当函数返回时,线程就会退出。
最后,我们将调用_thread模块(https://www.programiz.com/python-programming/tuple)的start_new_thread函数,以启动线程。第一个参数接收的是我们之