【发布时间】:2018-09-25 01:05:50
【问题描述】:
目前我正在尝试使用不同的函数调用一个函数,该函数循环初始函数,直到我自己击键。这是我要运行的代码:
def input_thread(a_list):
raw_input()
a_list.append(True)
def loop_display(function):
a_list = []
thread.start_new_thread(input_thread, (a_list,))
while not a_list:
function
#print "next"
time.sleep(2)
loop_display(function)
问题是它只运行一次被调用的函数。
当我在循环中打印某些内容时,它会循环打印调用,但传入的函数只有一次。
理想情况下,我想将此循环放入另一个文件中,并在需要时调用它。但是,如果我不能通过它调用另一个函数,那将不起作用,对吗?
我从this answer.中提取了循环代码
注意:如果重要,结束函数的击键工作正常。
【问题讨论】:
-
为什么不使用普通的同步原语,比如锁和信号量?
-
@Marat 我不知道这些东西是什么。我是自学成才,所以有些事情对我来说还不是很明显。
-
我想像Event 这样的东西可以稍微简化同步部分。此外,还有检查标准输入的非阻塞方法,这将完全消除对线程的需求
-
@Marat 你知道那段代码的样子吗?这似乎是需要一段不那么简单的代码的简单事情之一。
标签: python python-2.7 function while-loop call