Pythonでスレッドを試しています。別のメソッドの実行中 (5 ~ 10 分間) に回転カーソルを表示したい。私はいくつかのコードを実行しましたが、これはどのように行うのでしょうか? 私はグローバルを使いたくないので、もっと良い方法があると思いますか?
c = True
def b():
for j in itertools.cycle('/-\|'):
if (c == True):
sys.stdout.write(j)
sys.stdout.flush()
time.sleep(0.1)
sys.stdout.write('\b')
else:
return
def a():
global c
#code does stuff here for 5-10 minutes
#simulate with sleep
time.sleep(2)
c = False
Thread(target = a).start()
Thread(target = b).start()
編集:
もう 1 つの問題は、処理が終了したときに、回転カーソルの最後の要素がまだ画面に表示されていることです。のようなもの\
が印刷されます。