intervall of about 1 second for xmlrpc calls?
Thomas Lehmann
t.lehmann at rtsgroup.net
Thu May 20 05:49:06 EDT 2010
Hi,
I'm wondering about the behavior. Running this example - it looks like
- that each rpc call is triggered in a visible interval (about one
second).
What's wrong?
Thomas
APPENDIX:
<code>
import threading
from xmlrpc.server import SimpleXMLRPCServer
import xmlrpc.client
class MyServer(threading.Thread):
def __init__(self, host, port):
threading.Thread.__init__(self)
self.server = SimpleXMLRPCServer((host, port))
self.server.register_function(self.is_even, "is_even")
self.server.register_function(self.stop, "stop_server")
def run(self):
print("server: waiting for requests...")
self.server.serve_forever()
print("server: is down.")
def stop(self):
print("server: shutdown requested...")
self.stoptimer = threading.Timer(1, self.server.shutdown)
self.stoptimer.start()
return "done."
def is_even(self, n):
print("server: check %d to be even" % (n))
return n%2 == 0
# server as thread
server = MyServer("localhost", 1234)
server.start()
# client code
serverProxy = xmlrpc.client.ServerProxy("http://localhost:1234")
for n in range(1,2+1):
print("%d is %s" % (n, ["odd", "even"][serverProxy.is_even(n)]))
serverProxy.stop_server()
</code>
More information about the Python-list
mailing list