0
有一些工具可以使控制台命令或控制台应用程序作为守护程序运行。为了“守护”它,可以这么说。作为常规应用程序运行守护进程(在KDevelop中调试)
有没有办法像常规控制台应用程序一样运行守护进程?
我在KDevelop中编码,没有看到守护程序调试的任何选项。
谢谢!
有一些工具可以使控制台命令或控制台应用程序作为守护程序运行。为了“守护”它,可以这么说。作为常规应用程序运行守护进程(在KDevelop中调试)
有没有办法像常规控制台应用程序一样运行守护进程?
我在KDevelop中编码,没有看到守护程序调试的任何选项。
谢谢!
向守护程序添加一个特殊的调试模式来启用它是相当正常的。也就是说,添加一个命令行选项来禁用守护步骤,让程序在前台运行。然后在gdb下运行守护进程很简单。
我不知道有任何通用的方法来做到这一点。也许它可以通过LD_PRELOAD
拦截来完成,这很酷 - 但修改源代码更简单。
要调试正在运行的守护进程,可以使用gdb attach
命令。但是,这对于调试守护进程启动并不是很好,因为您必须争分夺秒地进行连接。
Linux内核不支持“预先附加”到程序的下一个实例,但是我通过SystemTap写了一个黑客程序,您可以找到here。
感谢您的解释!你是一位优秀的程序员!顺便说一句,我正在尝试创建一个REST API服务器应用程序。只是为了更熟悉C++。我也设法禁用守护进程,现在使用gdb在KDevelop中调试它非常舒服。刚刚评论了以下行:https://github.com/Begun/serverlib/blob/master/examples/example.cpp#L154 –