2011-08-31 87 views

回答

15

看一看cherrypy.process.servers。你可以嘗試這樣的事情:

import cherrypy 
cherrypy.config.update({'server.socket_port': 8099}) 
cherrypy.engine.restart() 
+0

雖然我同意,這應該是正確的答案,我發現,簡單地做一個配置更新,然後我的服務器上調用重啓導致它獲得「卡住」與消息:「正在等待子線程終止......」和「等待線程的線程1。」不知道爲什麼會這樣。 – user975326

4

如果你不想更換整個過程(這是什麼cherrypy.engine.restart()做),你可以這樣做:

import cherrypy 
cherrypy.engine.stop() 
cherrypy.server.httpserver = None 
cherrypy.config.update({'server.socket_port': 8099}) 
cherrypy.engine.start() 

設置的httpserver到需要的無或cherrypy.engine.start()呼叫只會重用已有的主機/端口,而不是拿起更改的配置。我不知道這是不恰當服用的實現細節的優點,雖然。

相關問題