私のソフトウェアで Python 2.5.5 を使用しているときに、このエラーが発生しました。どうしてですか?_empty はキューから消えましたか? 私はこれをまったく理解していません。私は queue から継承しませんでした。Queue クラスの通常のインスタンスだけがあります。私のマシンではすべて正常に動作しているように見えますが、顧客のマシンではエラーが発生しました。何が問題なのか、誰かアドバイスをいただけますか?
ここで問題が発生しました:
import Queue
self.requests.mutex.acquire()
allCount = self.requests._qsize()
while not self.requests._empty():
try:
(sock, addr, _) = self.requests._get()
# ... do some things
self.requests.mutex.release()
以前は、キューは次のように初期化されていました
self.requests = Queue(self.reqQLen)
また、これらのキュー メソッドもモジュールで使用されます: put_nowait、qsize、get。キューは、マルチスレッドのコンテキストで使用されます。これが原因でしょうか?
私は疑問に思っています:エラーメッセージは、変数requestsがキューインスタンスとして認識されていることを示していますが、属性 _empty はそこにありません。ただし、これは Queue クラスの通常のメソッドです。