그래서 백그라운드에서 서버를 실행하는 프로세스를 만들고 데몬 프로세스로 시작하려고했습니다.python-gevent 및 python-daemon 관련 문제
그러나class App():
def __init__(self):
self.stdin_path = '/dev/null'
self.stdout_path = '/dev/tty'
self.stderr_path = '/dev/tty'
self.pidfile_path = '/tmp/foo.pid'
self.pidfile_timeout = 5
def run(self):
server = WSGIServer(('localhost',28080),handle_request)
server.serve_forever()
if __name__ == '__main__':
app = App()
daemon_runner = runner.DaemonRunner(app)
daemon_runner.do_action()
, 이것은 나에게 오류 제공 : 그래서 내 코드는 내가 경고 온라인 보았다
[warn] Epoll ADD(1) on fd 5 failed. Old events were 0; read change was 1 (add); write change was 0 (none): Invalid argument
Traceback (most recent call last):
File "enrollmentrunner2.py", line 110, in <module>
daemon_runner.do_action()
File "/usr/lib/python2.7/dist-packages/daemon/runner.py", line 186, in do_action
func(self)
File "/usr/lib/python2.7/dist-packages/daemon/runner.py", line 131, in _start
self.app.run()
File "enrollmentrunner2.py", line 105, in run
server.serve_forever()
File "/usr/lib/python2.7/dist-packages/gevent/baseserver.py", line 188, in serve_forever
self.start()
File "/usr/lib/python2.7/dist-packages/gevent/baseserver.py", line 149, in start
self.start_accepting()
File "/usr/lib/python2.7/dist-packages/gevent/server.py", line 99, in start_accepting
self._accept_event = core.read_event(self.socket.fileno(), self._do_accept, persist=True)
File "core.pyx", line 308, in gevent.core.read_event.__init__ (gevent/core.c:3960)
File "core.pyx", line 252, in gevent.core.event.add (gevent/core.c:2952)
IOError: [Errno 22] Invalid argument
을, 나는 어느 곳을 찾을 수 있고, 오류가 정말하지 않았다 나에게 너무 많은 유용한 정보를 줘. 여기에 설명 된 프로그램을 실행했습니다 https://stackoverflow.com/a/9047339, 그리고 난 그냥 프로그램을 혼자, 메인 등에 배치하여 실행했습니다. 그러나, 내가 그들을 결합하면 물건을 엉망 것으로 보인다. 왜이 사람이 누군지 알 수 있습니까?