问题标签 [kill]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
40207 浏览

android - 如何防止我的 Android 应用程序/服务被任务管理器“杀死”?

我的服务保持运行非常重要,直到有密码的人从我的 UI 屏幕停止服务。我的应用程序运行良好,但它旨在由父母(使用密码)在孩子的手机上打开/关闭。我已经设法使一切正常,但我遇到的问题是,如果孩子使用任务管理器来终止我的服务,那么我的应用程序就没用了。我会感谢任何知道方法的人

1)监视服务并在其“被杀死”时自动启动它或 2)防止有人能够杀死它,除了启动服务的活动(管理屏幕)。或两者?

如果我描述的问题不是很清楚,我很抱歉,我是初学者。到目前为止,我已经取得了很大的进步,但我被困在了最后一个障碍上。

0 投票
3 回答
2046 浏览

perl - 当 Perl 中的警报触发时,我应该如何清理挂起的孙子进程?

我有一个并行化的自动化脚本,它需要调用许多其他脚本,其中一些会挂起,因为它们(错误地)等待标准输入或等待各种其他不会发生的事情。这没什么大不了的,因为我抓住了那些惊慌失措的人。诀窍是在子进程关闭时关闭那些挂起的孙进程。我认为 , waiting 和 process 组的各种咒语SIGCHLD可以解决问题,但它们都阻塞并且孙子没有收获。

我的解决方案可行,但似乎不是正确的解决方案。我对 Windows 解决方案还不是特别感兴趣,但我最终也会需要它。我的只适用于 Unix,目前还可以。

我写了一个小脚本,它需要同时运行的并行子节点的数量和分叉的总数:

这可能会在几分钟内达到每个用户的进程限制。我发现的许多解决方案只是告诉您增加每个用户的进程限制,但我需要它运行大约 300,000 次,所以这是行不通的。同样,重新执行等清除进程表的建议也不是我需要的。我想真正解决这个问题,而不是在上面贴胶带。

我爬取进程表寻找子进程并在处理程序中单独关闭挂起的进程SIGALRM,这需要死掉,因为其余的真实代码在那之后没有成功的希望。从性能的角度来看,通过进程表的笨拙爬行不会打扰我,但我不介意不这样做:

如果您想用完进程,请取出kill

我认为设置一个进程组会起作用,这样我就可以一起杀死所有东西,但这会阻止:

POSIX相同的事情setsid也不起作用,我认为这实际上以不同的方式破坏了事情,因为我并没有真正将其守护。

奇怪的是,Parallel::ForkManager对于相同的run_on_finish清理代码来说发生得太晚了:孙子显然已经与子进程解除了关联。

0 投票
5 回答
859 浏览

perl - 如果一个进程被 sigkill 杀死,我该如何让它再次运行?

我有一个其他进程试图杀死的进程,如果他们设法做到这一点,我如何确保该进程将再次运行?

0 投票
1 回答
1244 浏览

android - Android:当应用程序被杀死时,如何设置新启动的入口点?

我正在使用一个只有静态字段的单独类来存储当前的应用程序数据。sharedpreferences它在应用程序启动时部分填充。其余的是数据,例如某些操作的结果,用于进一步浏览这些结果(使用结果的多个活动)。

我可以转到主屏幕,启动其他应用程序等,当我返回自己的应用程序时,它就可以正常工作。

但是,由于新Error Reporting功能的出现,我收到了一些与错误相关的错误报告nullreference。对象是null对上述单独类中的静态字段的引用。

由于我无法重现该错误,我倾向于认为这是由于应用程序由于内存不足而被杀死,并且当它重新启动时,它会oncreate从用户当前所在的活动中调用。但是,单独类中的所有静态数据没有恢复,因此它崩溃了。

我想知道:有没有办法强制应用程序完全“重新启动”,而不是从最后使用的活动开始,如果它被杀死?或者这是标准行为?我可以以编程方式执行此操作吗?就像静态字段为空时一样,重新启动应用程序?

0 投票
1 回答
353 浏览

perl - 如果我在构建测试覆盖过程完成之前终止了它,我可以强制 Perl Devel::Cover 生成覆盖率报告吗?

如果我能够成功启动 Devel::Cover 并且它开始在 cover_db 目录中收集数据,那么我是否可以终止该进程,然后在事后获取 Devel::Cover 或其他一些实用程序来处理这些二进制 Devel::将运行文件和结构文件覆盖到 HTML 覆盖率报告中?

以另一种方式问这个问题......我可以使用 Devel::Cover 来获取我无法停止的进程的覆盖率报告,而不是通过终止进程?

这个问题与:Selenium 执行时如何获得 Perl CGI 脚本的代码覆盖率?

0 投票
17 回答
246920 浏览

python - 按名称杀死进程?

我正在尝试终止一个进程(特别是 iChat)。在命令行上,我使用以下命令:

然后:

但是,我不确定如何将这些命令转换为 Python。

0 投票
4 回答
18635 浏览

java - 如何使用 SIGKILL Process.destroy() 杀死 Java 中的 Linux 进程 SIGTERM

在 Linux 中,当我在 java.lang.Process 对象上运行 destroy 函数(这是真正的类型 java.lang.UNIXProcess )时,它会发送一个 SIGTERM 信号来处理,有没有办法用 SIGKILL 杀死它?

0 投票
2 回答
562 浏览

python - 强大地杀死 Windows 程序卡住报告“问题”

我正在寻找一种方法来杀死一个 Windows exe 程序,当从 python 脚本进行测试时,它会崩溃并向用户显示一个对话框;由于该程序被多次调用,并且可能反复崩溃,因此不适合。

问题对话框是 Windows 错误的标准报告:

“Foo.exe遇到问题需要关闭。对于给您带来的不便,我们深表歉意”

并提供调试、发送错误报告和不发送按钮。

我能够杀死由崩溃导致的其他形式的对话框(例如,调试构建的断言失败对话框是可以的。)

我在用于调用 .exe 的子进程模块的 Popen 对象上尝试了 taskkill.exe、pskill 和 terminate() 函数

有没有人遇到过这个特定的问题,并找到了解决方案?

我希望自动化用户输入来选择窗口,然后按“不发送”按钮是一种可能的解决方案,但如果可能的话,我想要更简单的东西

0 投票
1 回答
1682 浏览

android - Android:如何在活动中接收进程信号以杀死子进程?

我的应用程序调用 Runtime.exec() 在启动时在单独的进程中启动可执行文件。我希望这个子进程在父活动退出时被杀死。现在我可以使用 onDestroy() 来处理常规情况,但不能使用“强制退出”、从 DDMS 关闭或从控制台中终止,因为这些不运行 onDestroy()。在这些情况下似乎也没有调用 addShutdownHandler()。

是否有任何其他钩子或信号处理程序通知我的活动即将终止?作为替代方案,有没有办法让系统在父进程死亡时自动终止子进程?

0 投票
2 回答
2340 浏览

perl - 在 perl 中重定向输出时 fork exec kill 出现问题

我在 perl 中创建了一个脚本来运行超时的程序。如果正在执行的程序花费的时间比超时时间长,则脚本会终止该程序并返回消息“TIMEOUT”。

该脚本运行良好,直到我决定重定向已执行程序的输出。

当 stdout 和 stderr 被重定向时,脚本执行的程序不会被杀死,因为它的 pid 与我从 fork 得到的不同。

在重定向的情况下,似乎 perl 执行了一个执行我的程序的 shell。

我想要输出重定向,但在超时的情况下仍然能够终止程序。

关于我如何做到这一点的任何想法?

我的脚本的简化代码是:

谢谢你的帮助。