如何停止Web服务器(通过web.py和线程实现)

发布于 2024-12-07 11:11:31 字数 119 浏览 2 评论 0原文

我使用 web.py 实现了简单的网络服务器。 通过多线程模块,我能够运行多个监听不同端口的网络服务器实例。 现在所有实例都永远监听 http 请求。我想进入一个特定的线程。 有没有办法阻止实例侦听(或完全杀死特定线程。)

I have implemented simple webserver using web.py.
And through multithreading module, I am able to run multiple instances of webserver listening on separate ports.
Now all the instnces are listening http requests forever. and I want to step a particular thread.
Is there a way to stop an instance from listening (or kill particular thread altogether.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

回首观望 2024-12-14 11:11:31

api.py

import web
import threading

urls = (
    '/', 'index',
)


class index:
    def GET(self):
        return "I'm lumberjack and i'm ok"

def run():
    app = web.application(urls, globals())
    t = threading.Thread(target=app.run)
    t.setDaemon(True) # So the server dies with the main thread
    t.setName('api-thread')
    t.start()

frame.py

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
import api

app = QApplication(sys.argv)
web = QWebView()
api.run() 
web.load(QUrl("http://0.0.0.0:8080/"))
web.show()
sys.exit(app.exec_()) 

api.py

import web
import threading

urls = (
    '/', 'index',
)


class index:
    def GET(self):
        return "I'm lumberjack and i'm ok"

def run():
    app = web.application(urls, globals())
    t = threading.Thread(target=app.run)
    t.setDaemon(True) # So the server dies with the main thread
    t.setName('api-thread')
    t.start()

frame.py

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
import api

app = QApplication(sys.argv)
web = QWebView()
api.run() 
web.load(QUrl("http://0.0.0.0:8080/"))
web.show()
sys.exit(app.exec_()) 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文