mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-08-29 08:21:27 +00:00
close interfaces on shutdown
This commit is contained in:
parent
e702b3312b
commit
58c817f81a
4 changed files with 12 additions and 8 deletions
2
electrum
2
electrum
|
@ -209,7 +209,7 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
# we use daemon threads, their termination is enforced.
|
# we use daemon threads, their termination is enforced.
|
||||||
# this sleep command gives them time to terminate cleanly.
|
# this sleep command gives them time to terminate cleanly.
|
||||||
time.sleep(0.2)
|
time.sleep(0.3)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
if cmd == 'daemon':
|
if cmd == 'daemon':
|
||||||
|
|
|
@ -311,8 +311,8 @@ class TcpInterface(threading.Thread):
|
||||||
break
|
break
|
||||||
self.process_response(response)
|
self.process_response(response)
|
||||||
|
|
||||||
print_error("exit interface", self.server)
|
|
||||||
self.change_status()
|
self.change_status()
|
||||||
|
print_error("closing connection:", self.server)
|
||||||
|
|
||||||
def change_status(self):
|
def change_status(self):
|
||||||
# print_error( "change status", self.server, self.is_connected)
|
# print_error( "change status", self.server, self.is_connected)
|
||||||
|
|
|
@ -368,7 +368,7 @@ class Network(threading.Thread):
|
||||||
def run(self):
|
def run(self):
|
||||||
while self.is_running():
|
while self.is_running():
|
||||||
try:
|
try:
|
||||||
i, response = self.queue.get(0.1) #timeout = 30 if self.interfaces else 3)
|
i, response = self.queue.get(timeout=0.1) #timeout = 30 if self.interfaces else 3)
|
||||||
except Queue.Empty:
|
except Queue.Empty:
|
||||||
if len(self.interfaces) < self.num_server:
|
if len(self.interfaces) < self.num_server:
|
||||||
self.start_random_interface()
|
self.start_random_interface()
|
||||||
|
@ -404,6 +404,10 @@ class Network(threading.Thread):
|
||||||
if not self.interface.is_connected and self.config.get('auto_cycle'):
|
if not self.interface.is_connected and self.config.get('auto_cycle'):
|
||||||
self.switch_to_random_interface()
|
self.switch_to_random_interface()
|
||||||
|
|
||||||
|
print_error("Network: Stopping interfaces")
|
||||||
|
for i in self.interfaces.values():
|
||||||
|
i.stop()
|
||||||
|
|
||||||
|
|
||||||
def on_header(self, i, r):
|
def on_header(self, i, r):
|
||||||
result = r.get('result')
|
result = r.get('result')
|
||||||
|
@ -440,6 +444,7 @@ class Network(threading.Thread):
|
||||||
self.response_queue.put(r)
|
self.response_queue.put(r)
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
|
print_error("stopping network")
|
||||||
with self.lock:
|
with self.lock:
|
||||||
self.running = False
|
self.running = False
|
||||||
|
|
||||||
|
|
|
@ -86,8 +86,9 @@ class NetworkProxy(threading.Thread):
|
||||||
break
|
break
|
||||||
self.process(response)
|
self.process(response)
|
||||||
|
|
||||||
print_error("NetworkProxy thread terminating")
|
if self.network:
|
||||||
self.stop()
|
self.network.stop()
|
||||||
|
print_error("NetworkProxy: terminating")
|
||||||
|
|
||||||
def process(self, response):
|
def process(self, response):
|
||||||
if self.debug:
|
if self.debug:
|
||||||
|
@ -215,8 +216,6 @@ class NetworkProxy(threading.Thread):
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
self.running = False
|
self.running = False
|
||||||
if self.network:
|
|
||||||
self.network.stop()
|
|
||||||
|
|
||||||
def stop_daemon(self):
|
def stop_daemon(self):
|
||||||
return self.send([('daemon.stop',[])], None)
|
return self.send([('daemon.stop',[])], None)
|
||||||
|
|
Loading…
Add table
Reference in a new issue