标签: kill

如何使用VBScript杀死由特定用户启动的进程

我有多个用户在Windows 2003服务器上运行attachemate.我想杀死user_1启动的attachemate.exe而不杀死user_2启动的attachemate.exe.

我想使用VBScript.

vbscript kill windows-server-2003

5
推荐指数
1
解决办法
2万
查看次数

在不使用popen()或system()的情况下按名称查找进程的PID

我有一个进程名称,我kill()要向该进程发送一个信号,但我需要调用它的PID kill().我只想用:

popen("pidof process_name");
Run Code Online (Sandbox Code Playgroud)

作为最后一件事.有没有其他方法可以找到进程'PID?我能想到的一种方法是向该进程发送套接字请求并询问其PID.

另一种方式对于我正在编写的简单代码来说有点过于复杂:要做pidof命令的源代码实际正在做的事情(它使用函数调用find_pid_by_name()但是它做了很多事情).

如果没有简单的解决方案,我就这样做:

system("pkill <process_name>");
Run Code Online (Sandbox Code Playgroud)

并检查其返回码.但是,在所有Linux机器上都可以获得pkill吗?

c unix signals pid kill

5
推荐指数
1
解决办法
2万
查看次数

杀死java中的无限循环

我正在使用第三方库来处理大量数据集.这个过程偶尔会进入一个无限循环(或被阻止 - 不知道为什么也不能进入代码).我想在一段时间之后杀死它并继续下一个案例.一个简单的例子是:

for (Object data : dataList) {
    Object result = TheirLibrary.processData(data);
    store(result);
}
Run Code Online (Sandbox Code Playgroud)

processData通常最多需要1秒钟.我想设置一个计时器,在10秒之后杀死processData()

编辑我会很感激代码片段(我没有使用线程).Executor方法看起来很有用但我不太清楚如何开始.此外,更常规方法的伪代码对我来说太笼统了.

@Steven Schlansker - 建议除非第三方应用程序预期中断,否则它将无效.再次详述和示例将被理解

编辑我从同事Sam Adams那里得到了我想要的精确解决方案,我将其作为答案.它比其他答案更详细,但我会给他们两个投票.我将Sam的标记为已批准的答案

java kill infinite-loop

5
推荐指数
3
解决办法
3978
查看次数

如何杀死背景php线程?

我创建了一个具有ignore_user_abort(true)的php脚本; 在它,它运行在无限循环...我关闭了网页,apache服务器和浏览器..它现在像一个世界末日运行..没有什么似乎阻止它..我怎么阻止它?它在Windows中作为(进程名称)运行的是什么?我搜索了与php或服务器或浏览器相关的术语..似乎没有什么打...

我如何现在"杀死"这个过程?

php background kill process

5
推荐指数
1
解决办法
2万
查看次数

如何在Emacs中自动终止终端进程出口上的缓冲区

与之关联的进程结束后,如何自动终止终端缓冲区。

emacs kill process exit

5
推荐指数
2
解决办法
802
查看次数

Windows中的不朽过程; 无法杀死它

我正在Windows 7/MinGW中编写一个普通的,无辜的C++/Qt程序.

这是两天内第二次关闭程序后,可执行文件仍在活动进程中,并且无法杀死它(我从命令行和Windows任务管理器中尝试).

一个不便之处是我无法重新链接我的代码,因为二进制代码无法被覆盖,正在运行.

windows qt kill process windows-7

5
推荐指数
1
解决办法
3822
查看次数

如何使用Python子进程终止进程组

我试图使用Python子进程执行以下等效操作:

>cat /var/log/dmesg | festival --tts &
[1] 30875
>kill -9 -30875
Run Code Online (Sandbox Code Playgroud)

请注意,我正在杀死进程(由负号前面指示进程ID号),以便终止所有子进程Festival启动.

在Python中,我目前有以下代码,其中两个进程是通过管道创建和链接的.

process_cat = subprocess.Popen([
    "cat",
    "/var/log/dmesg"
], stdout = subprocess.PIPE)
process_Festival = subprocess.Popen([
    "festival",
    "--tts"
], stdin = process_cat.stdout, stdout = subprocess.PIPE)
Run Code Online (Sandbox Code Playgroud)

我应该如何以与上面显示的Bash方式相同的方式杀死这些进程及其子进程?以下方法是不够的,因为它不会杀死子进程:

os.kill(process_cat.pid, signal.SIGKILL)
os.kill(process_Festival.pid, signal.SIGKILL)
Run Code Online (Sandbox Code Playgroud)

有没有更优雅的方法来做到这一点,也许只使用一个过程?

python subprocess kill child-process festival

5
推荐指数
1
解决办法
6844
查看次数

如何杀死Android服务?

我正在编写一个具有长期服务的应用程序.

我在服务的onDestroy方法中写了一些状态保存代码.

我的意图是,如果服务因内存压力而被Android杀死,应该调用此方法.

我如何模拟被内存压力杀死的服务?

我试过adb shell am force-stop com.example.app但是onDestroy没有调用服务的方法.

onDestroy一个明智的服务关闭状态节点?

如果是这样,我如何让onDestroyAndroid调用服务,以进行调试/测试?

service android kill

5
推荐指数
1
解决办法
1万
查看次数

如何通过键盘快捷键发送SIGUSR1信号?

我想将SIGUSR1信号发送到我的node.js应用程序以通过终端进行调试。我知道命令kill -SIGUSR1 <pid>

如何为此设置键盘快捷键?如果有关系,我会使用MacO

console signals kill node.js

5
推荐指数
2
解决办法
1231
查看次数

尽管进程已死,为什么仍会收到子进程资源警告?

我一直在尝试找出如何启动不同的子流程实例,然后杀死它们然后创建新的实例。父python进程从不执行,只会杀死子进程。我在SO上跟踪了很多链接,但是一旦父python进程结束,我就会不断收到以下消息:

F/Users/Lucifer/miniconda3/envs/rltp/lib/python3.6/subprocess.py:761: ResourceWarning: subprocess 40909 is still running ResourceWarning, source=self)
Run Code Online (Sandbox Code Playgroud)

这似乎很有趣,因为我做到了,ps但是却一无所获:

  PID TTY           TIME CMD
 7070 ttys001    0:00.06 /Applications/iTerm.app/Contents/MacOS/iTerm2 --server login -fp Lucifer
 7072 ttys001    0:00.61 -bash
17723 ttys002    0:00.06 /Applications/iTerm.app/Contents/MacOS/iTerm2 --server login -fp Lucifer
17725 ttys002    0:00.06 -bash
38586 ttys002    0:00.16 sertop --no_init
Run Code Online (Sandbox Code Playgroud)

我只想开始一个过程:

self.serapi = subprocess.Popen(['sertop','--no_init'],
    stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE,
    preexec_fn=os.setsid,shell=True
    ,)
Run Code Online (Sandbox Code Playgroud)

并杀死它:

    os.killpg(os.getpgid(self.serapi.pid), signal.SIGTERM)
Run Code Online (Sandbox Code Playgroud)

上面的代码本质上是从最上面的答案复制的:

如何终止以shell = True启动的python子进程

但我不确定为什么会收到此消息。我是否成功终止了子进程?我计划启动并杀死其中许多人。


注意我不知道或不需要shell=True。我只是复制了那个,就是我发布的答案/问题的答案。我宁愿没有那个参数。


根据我尝试的答案:

def kill(self):
    self.serapi.wait()
    #self.serapi.kill()
    self.serapi.terminate()
    #os.killpg(os.getpgid(self.serapi.pid), signal.SIGTERM)
    #self.serapi.wait()
Run Code Online (Sandbox Code Playgroud)

以及上述内容的不同排列方式,但似乎没有任何效果。有什么建议吗?

python subprocess kill kill-process

5
推荐指数
1
解决办法
766
查看次数