gevent 中的服务器和同一应用程序中的其他 greenlets

Server in gevent and other greenlets in the same app

我正在搜索如何在一个程序中 运行 在 gevent 和其他 greenlet 中使用服务器。所以我想要服务器(多个连接)和一个或两个其他 greenlets。这可能吗?如果是,那又如何?

此致, 马特

from geventwebsocket import WebSocketServer, WebSocketApplication, Resource
import gevent

class EchoApplication(WebSocketApplication):
    def on_open(self):
        print ("Connection opened")

    def on_message(self, message):
        self.ws.send(message)

    def on_close(self, reason):
        print (reason)

def _test():
    while True:
        gevent.sleep(1)
        print ('other greenlet')

gevent.spawn(_test)

WebSocketServer(
('', 9007),
Resource({'/': EchoApplication})
).serve_forever()

此代码正在服务 ws 服务器并打印 'other greenlet' 文本 :)