summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorced <>2007-01-30 08:15:20 +0000
committerced <>2007-01-30 08:15:20 +0000
commit009458b21f790dff5a024168f48dfc4d89c25420 (patch)
treef5dec6245e319e0aca030d534c252e2cd6cf6a6e
parent57b9d4d22ff050c7c1f8d6c0c60218b2d0116874 (diff)
CLIENT-SERVER: improve tinysocket
bzr revid: ced-3d982a7e0d38ab5f02fe518fd26b0806b36be6ba
-rw-r--r--bin/netsvc.py14
-rwxr-xr-xbin/tinyerp-server.py1
2 files changed, 9 insertions, 6 deletions
diff --git a/bin/netsvc.py b/bin/netsvc.py
index f49034709dc..e2061015a53 100644
--- a/bin/netsvc.py
+++ b/bin/netsvc.py
@@ -313,7 +313,7 @@ class TinySocketClientThread(threading.Thread):
tb = sys.exc_info()[2]
pdb.post_mortem(tb)
ts.mysend(e, exception=True)
- self.sock.shutdown(socket.SHUT_RDWR)
+ self.sock.close()
self.threads.remove(self)
return True
except Exception, e:
@@ -322,7 +322,8 @@ class TinySocketClientThread(threading.Thread):
return False
def stop(self):
self.running = False
- self.sock.shutdown(socket.SHUT_RDWR)
+# self.sock.shutdown(socket.SHUT_RDWR)
+# self.sock.close()
class TinySocketServerThread(threading.Thread):
def __init__(self, interface, port, secure=False):
@@ -347,16 +348,19 @@ class TinySocketServerThread(threading.Thread):
ct.start()
self.threads.append(ct)
# print "threads size:", len(self.threads)
+ self.socket.close()
except Exception, e:
- print "exception", e
+ print "exception server", e
+ self.socket.close()
return False
def stop(self):
self.running=False
for t in self.threads:
- print "threads"
- t.join()
+ print "thread"
+ t.stop()
self.socket.shutdown(socket.SHUT_RDWR)
+ self.socket.close()
# vim:noexpandtab:
diff --git a/bin/tinyerp-server.py b/bin/tinyerp-server.py
index ffd8e659e4c..70518098b5d 100755
--- a/bin/tinyerp-server.py
+++ b/bin/tinyerp-server.py
@@ -233,7 +233,6 @@ logger.notifyChannel("web-services", netsvc.LOG_INFO, "starting TinySocket servi
def handler(signum, frame):
from tools import config
tinySocket.stop()
- tinySocket.join()
httpd.stop()
netsvc.Agent.quit()
if config['pidfile']: