私はアクションを実行するオブジェクトを持っています。そして、再びアクションを実行する前に1秒間スリープします。ただし、オブジェクトには、1秒間のスリープ期間に関係なく、常にアクセス可能でなければならない変数があります。オブジェクトの実行が中断したとき、その変数にアクセスできない場合pythonのsleep()はオブジェクトの変数へのアクセスを妨げますか?
これはPythonです。
ありがとうございました。
EDIT 1: 'アクセス不可' を明確化:
オブジェクトAは、Bが繰り返しアクセスする必要があるオブジェクト変数xを持っています。 オブジェクトAは1秒間スリープします。オブジェクトBがAがスリープしているときにxを使用しようとすると問題はありますか?
EDIT 2:
class QueueController(Process):
def __init__(self):
Process.__init__(self)
self.queue_stream = Queue()
self.queue_language = Queue()
self.queue_expander = Queue()
self.queue_feature = Queue()
self.queue_classify = Queue()
self.db = connect_to_db()
def run(self):
# Every second, allow 10 more tweets from the raw_tweets db
# enter the queue_stream to be processed
value = 0
while True:
for i in db.raw_tweets.find().skip(value).limit(30):
self.queue_stream.put(i)
value+=30
sleep(1)
はこれを使用して別のオブジェクトになります。 は言及し忘れた2つのオブジェクトが
EDIT 3(私はGILを避けるために、プロセスを使用しています)個々のプロセスとして実行されていますQueueControllerクラスは1秒間スリープしても 'queues_'変数を使用することができますか?私は睡眠が実行を止めるのではないかと心配していますが、副作用としてそれらのqueue_変数にアクセスすることもできます。
にアクセスしてください。オブジェクトはどこからアクセスしましたか? – alexn
解析エラー、開始からの再実行 - 「アクセスできない」とはどういう意味ですか? –
オブジェクトはスリープしません。スレッドはスレッドを実行しません。 –