저는 Python으로 작성된 작은 데스크탑 게임을 가지고 있으며 게임이 실행되는 동안 내부에 액세스 할 수 있기를 원합니다. 나는 web.py를 별도의 스레드에서 실행하고 페이지를 제공함으로써이 작업을 수행하려고 생각했습니다. 따라서 http://localhost:8080/map에 액세스하면 디버깅 목적으로 현재 레벨의 맵이 표시됩니다.다른 응용 프로그램에서 web.py 서버를 실행하는 방법
web.py가 설치되어 실행 중이지만 여기서 어디로 가야할 지 잘 모릅니다. 별도의 스레드에서 web.application을 시작했지만 어떤 이유로 스레드간에 데이터를 공유 할 수 없습니다 (제 생각 엔).
다음은이 아이디어를 테스트하는 간단한 예입니다. 나는 http://localhost:8080/이 매번 다른 숫자를 반환 할 것이라고 생각했지만, 같은 번호 (5)를 계속 보여줍니다. while 루프 내부에 common_value를 인쇄하면 증가합니다. 그러나 5에서 시작합니다.
여기서 내가 누락되어 있으며 합리적인 곳에 접근하는 방법은 무엇입니까? 가능하다면 데이터베이스를 사용하지 않는 것이 좋습니다.
import web
import thread
urls = (
'/(.*)', 'hello'
)
app = web.application(urls, globals())
common_value = 5
class hello:
def GET(self):
return str(common_value)
if __name__ == "__main__":
thread.start_new_thread(app.run,())
while 1:
common_value = common_value + 1
'code', def GET (self) : return str (thingy.common_value)'code' – Cletrix