import Pyro.core # A classe Pyro.core.ObjBase define # o comportamento dos objetos distribuídos class Dist(Pyro.core.ObjBase): def calc(self, n): return n**n if __name__ == '__main__': # Inicia a thread do servidor Pyro.core.initServer() # Cria o servidor daemon = Pyro.core.Daemon() # Publica o objeto uri = daemon.connect(Dist(),'dist') # Coloca o servidor em estado operacional daemon.requestLoop() import Pyro.core # Cria um objeto local para acessar o objeto remoto proxy = Pyro.core.getProxyForURI('PYROLOC://127.0.0.1/dist') # Evoca um método do objeto remoto print proxy.calc(1000)