据我了解,Ravenscar配置文件的一个限制是任务不应终止。
这在裸机上当然很有意义,但是在本机系统(作为可执行程序)上进行测试时,其副作用是,执行Control-C
退出主要任务会使程序在后台运行。
我计划最终将程序移至裸机,并希望能够使用Ravenscar配置文件-当执行此类操作时,如何允许程序正确退出?禁止中止声明。如果未应用Ravenscar配置文件,则可以通过允许任务终止来轻松完成此工作。现在,我正在做一个killall -9
,它可以工作,但是看起来并不优雅。
答案 0 :(得分:2)
事实证明,问题与我执行程序的方式有关。就我而言,我是通过远程ssh命令执行此操作的,例如:
ssh myhost "sudo su -c mycommand"
添加-t
来分配tty可以解决此问题,即:
ssh -t myhost "sudo su -c mycommand"