问题标签 [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 投票
3 回答
812 浏览

c# - 在 C# 中管理 COM 对象

我有一个从 C# 调用的 ATL COM exe。我将引用导入到 C# 中,一切正常,生成了 exe,我可以在其上调用函数。现在,我实例化了其中几个 COM 对象。偶尔其中一个会挂起。释放 COM 对象没有任何作用,因为它仍在运行。我无法终止该过程,因为然后我会丢失所有其他表现良好的对象。所以,

  1. 有没有办法真正杀死一个人?
  2. 有没有办法为每个请求的 com 对象启动一个 exe?
  3. 如果我的客户端意外退出,COM exe 永远不会被清理。有没有什么办法解决这一问题?

理想情况下,我将能够为每个对象实例启动一个 COM exe,并能够对其进行 Process.Kill()。是否可以选择其中任何一个?下面是我用来创建对象的类,在这种情况下,RandomID()(人为地)需要很长时间才能返回。另外,如果有办法用另一种语言做到这一点,我也愿意尝试一下。谢谢。

编辑:看起来如果我可以将其设置为“单次使用”,一切都会按我的意愿工作。但是,我找不到在 VS 2008 中设置此选项的位置

编辑:在谷歌群组上找到答案

0 投票
7 回答
63494 浏览

linux - Linux上进程的kill -9怎么可能没有效果?

我正在编写一个插件来在您访问网站时自动突出显示文本字符串。就像高亮搜索结果一样,但是是自动的,并且适用于许多单词;它可以用于过敏症患者,让文字真正脱颖而出,例如,当他们浏览美食网站时。

但我有问题。当我尝试关闭一个空的、新鲜的 FF 窗口时,它会以某种方式阻止整个过程。当我终止进程时,所有窗口都消失了,但 Firefox 进程仍然存在(父 PID 为 1,不听任何信号,有很多资源打开,仍然占用 CPU,但不会让步)。

所以两个问题:

  1. 一个进程怎么可能不听kill -9(既不是用户也不是root)?

  2. 除了重新启动,我能做些什么吗?

[编辑] 这是有问题的过程:

ps -ef | grep firefox

这是唯一剩下的过程。如您所见,它不是僵尸,它在奔跑!它不听kill -9,无论我是按PID还是名称杀死!如果我尝试与 连接strace,那么strace也会挂起并且无法被杀死。也没有输出。我的猜测是 FF 挂在一些内核例程中,但是哪个?

[EDIT2] 根据 sigjuice 的反馈:

可以向您显示进程挂起在哪个内核例程中。就我而言,有问题的插件是 Beagle Indexer (openSUSE 11.1)。禁用插件后,FF 又是一只又快又快乐的狐狸了。

0 投票
7 回答
2601 浏览

python - 如何安排进程的终止?

我需要运行一个进程,等待几个小时,杀死它,然后重新启动它。有没有一种简单的方法可以使用 Python 或 Bash 完成此任务?我可以在后台运行它,但是如何识别它以使用 kill 呢?

0 投票
14 回答
489689 浏览

linux - 是什么杀死了我的进程,为什么?

我的应用程序在 Linux 上作为后台进程运行。它当前在终端窗口的命令行中启动。

最近一个用户执行了一段时间的应用程序,它神秘地死了。文本:

被杀

在终端上。这发生了两次。我问是否有人在不同的终端使用 kill 命令杀死进程?不。

Linux 在什么情况下会决定终止我的进程?我相信 shell 显示“killed”是因为进程在收到 kill(9) 信号后死亡。如果 Linux 发送了终止信号,系统日志中是否应该有一条消息解释它为什么被终止?

0 投票
6 回答
11802 浏览

linux - 当操作系统杀死你的进程时返回代码

我想测试是否通过多个进程我能够在 32 位操作系统上使用超过 4GB 的内存(我的:带有 1GB 内存的 Ubuntu)。

因此,我编写了一个 malloc 略小于 1GB 的小程序,并对该数组执行了一些操作,并运行了该程序的 5 个实例 vie forks。

问题是,我怀疑操作系统杀死了其中的 4 个,只有一个幸存下来并显示它是“PID:我已经完成”)。

(我用小数组尝试过,打印了 5 次,当我用 TOP 查看正在运行的进程时,我只看到一个实例..)

奇怪的是 - 我在所有实例中都收到了返回代码 0(成功?),包括那些据称被操作系统杀死的实例

我没有得到任何说明进程被杀死的消息。

这个返回码在这种情况下正常吗?

(如果是这样,它会降低我对“返回码”的信任......)

谢谢。

编辑:一些答案暗示了小程序中可能存在的错误,所以在这里。分叉和保存返回码的较大程序较大,我无法在这里上传它,但我认为(并希望)它很好。

我还注意到,如果不是使用我的分叉程序运行它,而是使用终端运行它,使用 './a.out & ./a.out & ./a.out & ./a.out &' (当./a.out 是附加的小程序的二进制文件)我确实看到了一些“Killed”消息。

0 投票
2 回答
738 浏览

c - 我应该怎么做才能在 C 中修改我的 fork() 以使其运行良好?

我不明白为什么我的代码不起作用。

这是我的代码。我不知道为什么我得到一个错误段。有人可以向我解释原因吗?

0 投票
3 回答
7375 浏览

perl - 当主脚本被杀死时,如何杀死 Perl 的“系统”调用?

以前对这个问题的回答主要集中在分叉上:

对于这个问题,我只是询问对“系统”功能的调用。

假设我有一个名为sleep.pl的脚本:

然后我有一个名为kill.pl的脚本

我运行 kill.pl 并使用 ps 我找到了 kill.pl 的进程 ID 并杀死它(不使用 kill -9,只是正常杀死)

sleep.pl 还在睡觉。

我想我的问题的解决方案涉及一个 SIG 处理程序,但是我需要在处理程序中添加什么来杀死子进程?

0 投票
4 回答
11598 浏览

windows - 在 Windows 中切断/终止 tcp 连接

我想看看程序在连接断开时如何响应。除了禁用网卡之外,有没有办法在 Windows 中切断 tcp 连接而不杀死进程或拥有连接的线程?

0 投票
3 回答
2250 浏览

java - 以给定的执行时间启动线程

我的主进程调用了一个外部库方法。此方法有时会挂起。我无法修复外部库,因为另一家公司负责它。

我想使用一个线程来调用具有定义的执行计时器的库。当方法调用需要很长时间时,放置方法调用的具有 Runnable 的线程应该停止,主进程应该继续前进。

  1. 主线程等待
  2. 执行线程
    • start 启动定时器线程
    • 当计时器线程完成时,杀死执行线程
  3. 执行线程停止主
  4. 线程恢复

有人有这个逻辑的代码,我可以使用的设计模式或我可以阅读一些信息的互联网页面吗?

谢谢

0 投票
3 回答
2365 浏览

multithreading - 杀死 JavaME 1.2 线程的最佳实践?

问:WorkerThread我很想知道在 Java 1.2中终止作为后台线程(让我们称之为这个线程)运行的长期操作的最佳实践。

设想

具体来说,我正在为 Blackberry 设备开发一个应用程序,通过该应用程序进行 HTTP 连接。大图:如果将 URL 请求转发到后台线程 ( WorkerThread),则该线程发出请求并使用回调返回结果。

场景详情

现在存在这样一种情况,即在连接时存在数据连接,由于某种原因(驱动通过隧道),该连接不再存在。由于 Blackberry 设计架构的限制,实际连接将挂起,因为超时固定为 2 分钟。因此,迫切需要终止已挂起相对(15 秒)长一段时间的连接。

我当前的解决方案 - 2 Theads?

现在我目前的解决方案是WorkerThread在另一个线程中运行(让我们称之为这个新线程MonitorThead)。MonitorThread开始WorkerThread,休眠 1000 毫秒,然后定期检查是否WorkerThread还活着。如果 15 秒后 WorkerThread 仍然存在,MonitorThread 将 WorkerThread 置于睡眠状态并退出。这真的是最好的方法吗?

问题总结及要点

总之,以下是与该问题相关的核心问题和关键限制。干杯!

如何成功杀死卡在特定操作中的 java 后台线程?

场景限制:

  • 无法控制操作暂停并检查线程请求状态
  • 特定于 Blackberry 的 Java ME 1.2 实现及其 线程 API,因此没有显式 的kill()方法
  • 最关心的是最佳实践以及如何最安全地杀死持有线程。

跟进/编辑
Neil Coffey 建议我只保留对连接对象的引用,然后在该对象上调用close()。我目前正在研究这个...