from threading import *
from time import sleep
class worker(Thread):
def __init__(self, params = None):
Thread.__init__(self)
self.params = params
self.status = 0.0
self.start()
def run(self):
while self.status < 1.0:
# <--- This would be where you execute
# your demanding/costly operations
# Also, update your status (progress)
self.status += 0.1
sleep(0.1)
x = worker()
y = worker()
while x.status < 1.0 and y.status < 1.0:
print 'X status:', x.status
print 'Y status:', x.status
注: 1.0 カウンターの制限は、デモを提供するためのものです。実際の操作では、スレッドを無限ループで永遠に存続させるか、run() 関数で計算を実行してから、同様に保存できる目的の値を取得した後に終了します。self.status
変数への方法。