我用python-daemon库编写了一个守护进程。而且它一直占用大约20%的CPU。我能检查一下程序的哪个部分占用了所有的CPU时间,因为它实际上只是在等待用户输入?我们一如既往地感谢帮助!在
我的守护程序启动:
python文件1:
context = daemon.DaemonContext()
context.pidfile = PidFile(pidfile)
with context:
module.run()
python文件2:
^{pr2}$**编辑
也许你能再帮我一次,现在我运行了一个剖析器,但不能真正分辨出谁是“坏蛋”。这是my profile results
您可以将Python探查器附加到软件:
http://docs.python.org/library/profile.html
。。。并在守护进程启动时启动探查器。然后让探查器收集分析信息,并使用发送给进程的信号(例如SIGUSR1)让您的守护者将分析数据转储到文件中。在
http://docs.python.org/library/signal.html
…或当进程在atexit处理程序处退出时写入分析日志。在
然后您可以读取这个文件,看看哪个函数的CPU累积使用率最高。在
相关问题 更多 >
编程相关推荐