From: ThomasV Date: Wed, 13 Jun 2012 11:45:10 +0000 (+0400) Subject: threadsafe get_session X-Git-Url: https://git.novaco.in/?p=electrum-server.git;a=commitdiff_plain;h=449b48f5cf15a168129c93b66639fd85c2000c1c threadsafe get_session --- diff --git a/backends/irc/__init__.py b/backends/irc/__init__.py index 3b698d8..200d19f 100644 --- a/backends/irc/__init__.py +++ b/backends/irc/__init__.py @@ -120,7 +120,7 @@ class ServerProcessor(Processor): "address":s.address, "version":s.version, "subscriptions":len(s.subscriptions)}, - self.dispatcher.request_dispatcher.sessions) + self.dispatcher.request_dispatcher.get_sessions()) else: print "unknown method", request diff --git a/processor.py b/processor.py index 20fdbfd..4cbaa85 100644 --- a/processor.py +++ b/processor.py @@ -143,6 +143,10 @@ class RequestDispatcher(threading.Thread): if method in ['server.version']: session.version = params[0] + def get_sessions(self): + with self.lock: + r = self.sessions[:] + return r def add_session(self, session): with self.lock: