import threading
import time
import web
global bianliang
bianliang=0
class Test:
global bianliang
def GET(self):
return str(bianliang)
def _listen_yushui():
while True:
time.sleep(2)
global bianliang
print bianliang
def _add():
while True:
time.sleep(2)
global bianliang
bianliang=bianliang+1
urls=(
'/test','Test'
)
application = web.application(urls, globals())
if __name__ == "__main__":
yushui = threading.Thread(target=_listen_yushui)
yushui.setDaemon(True)
yushui.start()
add = threading.Thread(target=_add)
add.setDaemon(True)
add.start()
application.run()
上面的代码在运行时,控制台输出可以看到 bianliang 的值在不断的增加;但是发送一个网络请求'your_url/test',请求到的结果却是 bianliang 的初始值 0 ,这是为什么?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.