写一段示例代码 内容:quecPython 主线程下的子线程里 创建不被阻塞的定时器 自行运行
时间: 2024-03-18 11:38:50 浏览: 102
利用线程实现非窗口类定时器的例子
下面是一个示例代码,实现了在quecPython主线程下创建子线程,子线程中创建不被阻塞的定时器并自行运行:
```python
import _thread
import time
# 定时器回调函数
def timer_callback(timer_id):
print("Timer %d is triggered!" % timer_id)
# 子线程函数
def thread_func():
timer_id = 0
while True:
# 创建定时器
timer_id = _thread.start_new_thread(timer_callback, (timer_id,))
# 等待一段时间后再创建定时器
time.sleep(1)
# 创建子线程
_thread.start_new_thread(thread_func, ())
```
在这段代码中,`timer_callback`函数是定时器的回调函数,每当定时器触发时会执行该函数。`thread_func`函数是子线程的主函数,其中使用了`_thread.start_new_thread`方法来创建定时器,并且每隔一段时间就会创建一个新的定时器。在主线程中,使用`_thread.start_new_thread`方法创建了子线程,并将`thread_func`函数作为子线程的入口函数。这样就可以在quecPython主线程下创建子线程,子线程中创建不被阻塞的定时器并自行运行。
阅读全文