推出替代品

埃里克·米拉斯(Eric Milas)

我正在编写一个使用库的应用程序,该库在作为启动守护程序运行时将无法使用。库中有一个错误,当从守护程序使用该错误时,它将引发总线错误。(请参阅我的堆栈溢出文章:https : //stackoverflow.com/questions/20599283/signal-10-sigbus-in-c-library-when-running-application-as-launchd-daemon

但是,当我正常运行应用程序时,一切正常。我想知道是否有其他替代方案可供考虑。即使没有用户登录,该应用程序也需要在启动时启动并运行。如果崩溃,则重新启动该应用程序也是可取的,但是如果必须的话,我可以不用它而生存。

我已经对启动项进行了一些研究,但是由于它们已过时,因此我很警惕Apple会在某天删除该功能。

JdeBP

不会。在您到达这里时,很可能会遇到任何其他选择都完全相同的问题。

无需过多讨论堆栈跟踪中显而易见的内容,这就是StackOverflow领域:

与您从台式机或外壳程序运行的程序相比,几乎可以肯定地认为问题出在后台程序所具有的不同进程状态。环境变量,当前目录,资源限制,打开的文件句柄,控制终端,根目录,甚至是补充组,在dæmon管理员运行的dæmon流程与在dæmon管理员中调用的流程中,可能是不同的。登录会话。

您的问题可能归结于吐温之间的任何差异。(由于堆栈跟踪中的内容,我的有根据的猜测是环境变量。)但是这些差异是守护进程主管固有的。用固定的,可确定的过程状态执行守护程序是其设计的一部分。如果替换其他守护程序主管,您仍将获得与登录会话中运行的流程状态不匹配的受控流程状态。

您不应该考虑替代launchd您应该查看plist并对其进行调整,以设置ODBC驱动程序期望可用的正确内容(如我所说,可能是环境变量)。而且您应该阅读任何4D doco。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章