擅长:python、mysql、java
<p>根据评论中的澄清,您正试图阻止来自其他地方的一个循环。一种方法是共享变量:</p>
<pre class="lang-py prettyprint-override"><code>run_flag = True
def fn1():
while run_flag:
do_stuff()
sleep(60)
def stop_fn1():
global run_flag
run_flag = False
</code></pre>
<p>这是安全的,只要一次只能对<code>run_flag</code>进行一次写访问,也就是说,您没有试图跨多个线程共享它。如果你<em>是</em>,你需要考虑使用线程安全的工具,比如<code>semaphore</code></p>
<p>不需要<code>run_flag</code>是全局的,只要循环函数和设置它的函数都可以访问它</p>