腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
1
回答
多少是太多僵尸(坏)
目前在我的Linux上运行top,我看到了82个僵尸。一个小时后,我看到了128个僵尸。我知道僵尸是无害的,但多少是太多?它们能引起问题吗?
浏览 0
提问于2019-02-17
得票数 5
1
回答
工序表极限
、
、
我想知道linux中的Process是否有限制。能吃饱吗?如果是这样的话,我应该做些什么来创造空间(可能尝试删除僵尸进程的条目)?
浏览 0
提问于2020-05-14
得票数 2
回答已采纳
1
回答
C编程中“僵尸进程”的困惑
、
、
问题:我如何确定哪一个产生“僵尸过程” // Case 1 while(fork()) ; exit(0); // Case 2 while(!fork()) ; exit(0); 我知道“僵尸”是指进程终止并仍然消耗资源的时候。(或者至少我认为是这样的) 我认为,在这种情况下,会生成一个僵尸进程,因为它会在错误上返回-1,而(-1)= true,所以它只会继续分叉吗?我不太确定。任何洞察力都很好, 顺便说一句:这段代码是在c++编程语言的Linux环境中运行的。 提前感谢
浏览 1
提问于2016-04-27
得票数 1
回答已采纳
2
回答
僵尸,gdb无法连接,如何检查最后一次调用或回溯
、
、
、
、
我的应用程序在Linux机器上变成了僵尸,它不能被杀死,gdb也不能附加到它上,我不能调试。现在我想知道上一次调用的函数或回溯,有没有什么我可以得到的?在/proc/pid/stat下有什么我可以使用的信息吗?
浏览 1
提问于2012-06-28
得票数 0
3
回答
在父c中等待()的目的
、
、
、
、
我对linux和c ++中的进程很陌生。 #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main(int argc, const char * argv[]) { pid_t child_pid_or_zero = fork(); //fork returns twice if(child_pid_or_zero < 0) { //if fork returns a number smaller than zero, something wrong happe
浏览 7
提问于2016-10-11
得票数 0
回答已采纳
3
回答
如何使用wait()杀死僵尸进程
、
、
、
、
我有这样的代码,它需要一个父级来分叉3个子节点。 您如何知道(和)将"wait()"语句放置在何处以杀死 僵尸过程? 如果您有Linux虚拟盒,那么查看僵尸进程的命令是什么? main(){ pid_t子;pid_t约(“父”);printf(“现在.分叉!!\n");子=叉();int i=0;for (i=0;i<3;i++){ if (子< 0){ perror (“无法分叉”);}i++;}如果(子== 0) { printf (“创建子”#%d\n,(i+1));关于(“子”);中断;}}}{ pid_t me;pid_t oldone;m
浏览 3
提问于2015-02-11
得票数 6
回答已采纳
1
回答
在C (Linux)中创建僵尸进程
、
、
、
、
我的任务是创建僵尸进程。我的代码如下所示: #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <sys/types.h> #include <sys/wait.h> int main() { pid_t pid = fork(); if (pid == -1) { printf("error\n"); } else if (pid == 0)
浏览 15
提问于2021-10-23
得票数 1
2
回答
即使在杀死所有的java进程之后,java <defunct>仍然存在。
、
、
、
、
执行以下命令以终止linux系统上的java进程。 ps -ef | grep java | grep -v grep | awk '{print $2}'| xargs kill -9 在此之后,当我检查正在运行的java进程时,我可以发现"java“进程仍然在运行。 如何杀死这些废弃的进程?
浏览 0
提问于2013-12-06
得票数 1
1
回答
在Windows上,我是否必须在调用WaitForSingleObject()之后调用CreateProcess()?
、
、
、
在Linux上,我必须在父进程上的wait()后调用fork(),否则子进程在完成后将一直处于僵尸状态,直到父进程完成为止。 --我想知道我是否必须在上遵循类似的步骤,也就是说,在调用CreateProcess()之后,是否必须调用WaitForSingleObject()。 我知道Windows‘CreateProcess()与Linux的fork()不同,看起来’僵尸‘是一个在Windows上不存在的UNIX/Linux概念。但是,也许我仍然必须调用WaitForSingleObject()来释放分配给CreateProcess()的一些操作系统资源,类似于Linux的情况。
浏览 2
提问于2021-10-28
得票数 1
回答已采纳
1
回答
即使在子进程已经结束之后,杀死()总是返回0(成功)吗?
、
、
在C++ (在Linux上运行)中,希望执行类似的操作来确定进程是否正在运行。 bool isnotrunning(pid_t pidnr) { if(pidnr <= 0) return true; if(kill(pidnr,0) == 0) return false; return true; } 然后在我的主旋律里,我知道 pid_t myPid = -1; while(1) { if(isnotrunning(myPID) { myPid = fork(); if(myPid == 0) { /*Do something in chi
浏览 2
提问于2020-05-12
得票数 0
回答已采纳
1
回答
通过处理程序获取僵尸进程
、
、
、
下面编写的代码是通过父进程“从CMU的系统编程过程”来处理接收到的信号并收获僵尸。 Q1.-1的规则是“waitpid函数的第一个arg”吗?难道我们不应该通过我们正在收获的僵尸的pid吗? Q2.对于这里的循环,它是否在每次收到任何先例僵尸接收到的信号时检查所有僵尸? int ccount = 0; void child_handler2(int sig) { int child_status; pid_t pid; while ((pid = waitpid(-1, &child_status, WNOHANG)) > 0) { ccount--; safe_pr
浏览 1
提问于2018-01-14
得票数 1
回答已采纳
1
回答
如何将码头集装箱变成僵尸
、
几年前。当我刚开始玩码头的时候。我记得有一些博客文章提到,如果你不能很好地处理pid(1)过程。您将创建一个僵尸码头容器。在那个时候。我选择遵循这个建议,开始使用一个名为的init工具。我从来没见过僵尸容器被创建。 但我还是很好奇为什么这是个问题。如果我没记错,docker stop xxx默认情况下会将SIGTERM发送到容器pid(1)进程。如果进程不能在10s内优雅地停止(默认)。Docker将通过向pid(1)进程发送SIGKILL来强制杀死它。我也知道pid(1)进程在Linux系统中是特殊的。它可以忽略SIGKILL信号()。但我认为,即使进程在docker容器中的PID为1,也仅
浏览 0
提问于2018-07-04
得票数 0
6
回答
不能杀死僵尸进程
、
、
有没有办法杀死僵尸进程?我尝试过调用exit来终止该进程,甚至向该进程发送SIGINT信号,但似乎没有什么可以终止它。我正在为Linux编程。
浏览 4
提问于2011-06-14
得票数 9
回答已采纳
5
回答
如何确定进程的状态(例如,它是否为僵尸)
、
、
、
如何在Linux下使用C获取有关进程状态(例如,如果它是僵尸)的信息? 在阅读了到目前为止的答案之后,我想在一定程度上缩小我的问题范围:我更喜欢纯C解决方案。在阅读ps源代码(它是/proc/)之后,我认为应该有更好的方法,并在这里询问:)
浏览 34
提问于2009-03-11
得票数 2
回答已采纳
2
回答
如何仅等待()某些子进程并防止僵尸
、
、
、
、
我正试图在linux上用c++编写一个模拟shell,却被困在了这个问题上: 我需要在后台运行一些进程,在前台运行一些进程。为了防止前台进程变成僵尸,我可以使用wait(),但是如何防止后台进程变成僵尸呢?
浏览 0
提问于2018-11-24
得票数 1
回答已采纳
1
回答
Dameon进程是否占用RAM中的内存,如果存在Daemons进程数,则INIT是所有守护进程的父进程。
、
、
、
、
#include <stdio.h> #include <signal.h> void my_isr(int n) { printf("in isr pid=%d ppid=%d signal#=%d\n",getpid(),getppid(),n); } main() { printf("hello %d and bash id : %d\n",getpid(),getppid()); signal(SIGHUP,my_isr); while(1); } achul@ac
浏览 2
提问于2015-11-24
得票数 0
回答已采纳
1
回答
WSL -僵尸进程的不同行为
、
我只是在WSL上玩僵尸进程。我写了一个很简单的程序: #include <stdio.h> #include <stdlib.h> #include <unistd.h> #define CHILD 0 int main(){ int p; p = fork(); if(p == CHILD){ printf("Kind-PID: %u\n", getpid()); exit(1); } else if(p &g
浏览 0
提问于2019-05-17
得票数 0
回答已采纳
2
回答
僵尸进程对嵌入式linux的影响
、
我正在开发一个程序(Grand父进程),它自动重新启动一个进程(父进程),在出现错误时调用另外两个进程(子进程)。 如果其中一个子进程处理行为不当,父进程将尝试优雅地关闭应用程序,而父进程将重新启动所有操作。但是,在出现错误或意外行为时,父进程: children)Restart 杀死父进程(这将杀死父进程)。 由于我的代码中可能有一个问题,父母进程以僵尸的形式存活下来,有时我发现我的嵌入式linux中有12或20个僵尸。我知道僵尸只使用很少的资源(如果我没有弄错的话:只是它们进入了处理表)。 我的问题是,僵尸的数量有理论上的限制吗?
浏览 3
提问于2021-09-13
得票数 1
回答已采纳
2
回答
带有kill -9 PID的Linux终止进程
以ps和ps -ef为例,在Linux下使用kill-9 PID杀死一个进程后,如何验证该进程是否被杀死?
浏览 5
提问于2015-09-12
得票数 1
1
回答
杀死Java中调用的子进程的问题
、
、
在我的程序中,我调用一个Linux进程,读取该进程的输出,处理它,然后休眠直到下一次迭代。我遇到的问题是,即使在执行childProcess.destroy()时,我调用的进程也不会总是死掉。下面是代码: while(true) { Process childProcess = Runtime.getRuntime().exec("./getData"); InputStream input = childProcess.getInputStream(); BufferedReader inPipe = new BufferedReader(new Input
浏览 0
提问于2010-10-14
得票数 3
1
回答
SIGCHLD的默认配置与显式将配置设置为SIG_IGN之间有什么区别?
、
Linux编程接口显示 26.3.1为SIGCHLD建立一个处理程序SIGCHLD信号在其子进程中的任何时候发送给父进程。默认情况下,这个信号会被忽略,但是我们可以通过安装一个信号处理程序来捕捉它。在信号处理程序中,我们可以使用wait() (或类似的)来获取僵尸子类。然而,在这种方法中有一个微妙之处需要考虑。26.3.3忽略死子进程还有处理死子进程的进一步可能性。显式地将SIGCHLD的配置设置为SIG_IGN将导致随后被ter- minate的任何子进程被立即从系统中删除,而不是被转换为僵尸。在这种情况下,由于子进程的状态被简单地丢弃了,随后对wait() (或类似的)的调用将无法返回任何
浏览 0
提问于2020-12-08
得票数 -1
回答已采纳
1
回答
为什么在shell脚本中调用exec时会生成失效进程?
、
、
、
、
为什么在shell脚本中调用exec时会生成失效进程? 因为在启动snmpd之前应该设置和预加载一些额外配置和sharelib, 所以我使用了像bellow这样的shell脚本,但问题是每次启动shell脚本时都会生成一个僵尸进程。 据我所知,exec将取代原来的shell进程26452,为什么子进程26453会生成并变成僵尸? $# ps -ef | grep snmpd root 26452 12652 0 10:24 pts/4 00:00:00 snmpd udp:161,udp6:161 -f -Ln -I -system_mib ifTable -c /opt/s
浏览 44
提问于2020-12-16
得票数 0
回答已采纳
1
回答
僵尸进程能被调度吗?
、
由于僵尸进程是释放了所有资源但仍存在于进程表中的进程,因为它们的父进程可能要求返回状态,所以它是Linux中的一个单独的状态,如就绪、等待等,还是与表中的正常等待进程一样,也可以调度?
浏览 0
提问于2016-09-14
得票数 0
2
回答
这个程序是如何创建僵尸进程的?
、
、
、
下面的程序是如何工作的,并在linux下创建一个僵尸进程? #include <stdlib.h> #include <sys/types.h> #include <unistd.h> int main () { pid_t child_pid; child_pid = fork (); if (child_pid > 0) { sleep (60); } else { exit (0); } return 0; }
浏览 0
提问于2011-08-11
得票数 2
回答已采纳
5
回答
在linux C++中杀死僵尸进程,了解PID
、
、
、
我必须在linux C中杀死/清除僵尸进程。我所知道的是僵尸进程的PID。 我在一个循环中创建了一些僵尸进程: int i = 0; for (i; i<5; i++) { system("(: & exec sleep 30) &"); // create zombie for 30 sec } 我可以使用以下命令获取它们的PID编号: system("ps aux | awk '{ print $8 " " $2 }' | grep -w Z"); 但是如何仅使用PID来杀死/清理它们呢?我将PID保
浏览 7
提问于2012-12-02
得票数 0
回答已采纳
5
回答
为什么必须为子进程使用` `wait()`?
、
尽管等待的linux手册页很好地解释了,您需要对子进程执行wait(),以便它们不会变成僵尸,但它根本没有说明原因。 我计划我的程序(这是我的第一个多线程程序,所以请原谅我的幼稚)围绕着一个for(;;)曾经循环,它启动子进程,这些子进程被exec()删除,并且肯定会自行终止。 我不能使用wait(NULL),因为这使得并行计算变得不可能,因此我可能不得不添加一个进程表来存储子pids,并且必须使用waitpid -不是立即使用,而是在经过一段时间之后-这是一个问题,因为子进程的运行时间从几微秒到几分钟不等。如果我太早使用waitpid,我的父进程会被阻塞,当我使用太晚的时候,我会被僵尸淹没,
浏览 1
提问于2011-12-29
得票数 16
回答已采纳
2
回答
在多个分支留下僵尸和进程挂起后,程序控制不返回
、
、
、
尝试在Linux中模拟|命令行参数的功能。我添加了下面的进程。我只是在运行ps aux | grep记事本。我之前在这里发布了,但是这个问题是不同的,因为我有正确的输出,我只是不希望进程挂起。 1000 4074 0.0 0.0 4392 824 pts/0 S+ 21:38 0:00 grep notepad 1000 4075 0.0 0.0 0 0 pts/0 Z+ 21:38 0:00 [ps] <defunct> 1000 4076 0.0 0.0 4944 1172 p
浏览 1
提问于2014-04-12
得票数 0
4
回答
无法清除父进程为init的僵尸进程
、
、
我有一个僵尸进程: $ ps aux | grep Zl root 6641 122 0.0 0 0 ? Zl 08:57 371:10 [ovs_dpdk] <defunct> 而且,它的父对象看起来像init $ pstree init─┬─acpid ├─atd ├─cron ├─dbus-daemon ├─dnsmasq ├─6*[getty] ├─irqbalance ├─libvirtd───10*[{libvirtd}] ├─ovs_dpdk───{ovs_dpdk}
浏览 0
提问于2013-12-12
得票数 5
2
回答
UNIX:在出口时等待进程子程序?
、
、
、
、
假设我有一个C程序,它使用fork()和exec()生成一些子进程。父级保存其子级pid的列表。偶尔,它会尝试使用wait对它们使用WNOHANG,如果它们已经终止,则通知用户。 然后程序决定退出。我必须显式地对剩余的子进程进行kill和wait,这样它们才不会变成僵尸?根据维基百科: “僵尸进程不应与孤立进程混淆:孤儿进程是一个仍在执行的进程,但其父进程已死亡。这些进程不会变成僵尸进程;相反,它们被init (进程ID 1)所采用,它等待其子进程。” 因此,这表明等待是不必要的。但是,如果程序的孩子已经变成僵尸,而程序在等待他们之前就退出了呢?基本上,如果父进程退出,是否总是正确地回收作为僵
浏览 4
提问于2014-05-06
得票数 1
回答已采纳
1
回答
谁来做守护进程?
、
、
有各种技巧可以使linux进程守护进程,即在终端关闭后使命令运行。 nohup用于此目的,并且可以在C程序中使用fork()/setsid()组合来使其自身成为守护进程。 以上是我对linux守护进程的了解,但今天我注意到,退出终端并不能真正终止在命令末尾使用&启动的进程。 $ while :; do echo "hi" >> temp.log ; done & [1] 11108 $ ps -ef | grep 11108 username 11108 11076 83 15:25 pts/0 00:00:05 /bin/sh usern
浏览 0
提问于2012-12-06
得票数 1
回答已采纳
2
回答
UNIX僵尸和守护程序
、
、
我知道僵尸是当一个进程没有很好地清理(它的资源没有被回收/收割)时产生的。在调用fork()创建一个新进程之后,父进程应该总是在该进程上调用waitpid来清理它。 我还了解到,守护进程是通过派生本身由fork创建的子进程,然后让子进程死亡来创建的。显然,一旦这样做,UNIX中的init进程(pid #1)就会接管该进程。 我想知道的是-据我所知,当父母死亡时,它会自动清理孩子-那么僵尸是如何首先被创造出来的? 其次,守护进程的父进程会死亡,那么为什么守护进程不被认为是僵尸呢?
浏览 0
提问于2011-09-02
得票数 8
回答已采纳
1
回答
是否返回0语句?
、
return 0语句将0的值返回给操作系统还是返回给生成可执行文件的进程? 示例: #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <windows.h> int main() { fork(); return 0; } 使用fork()创建的第二个进程(子进程)将值0返回给生成它的进程(父进程)或操作系统?
浏览 1
提问于2014-05-01
得票数 1
1
回答
为什么父进程要等待(终止)直到其所有子进程终止?
、
、
、
我知道父进程没有强制执行,直到其所有子进程终止。不过,这是一个遵循的惯例。此外,我知道如果父进程在子进程终止之前终止,那么子进程就会成为孤儿,并且将被init进程采用。但我不明白的是,如果孩子的过程变成孤儿并被init过程所采纳,问题是什么。为什么要将它附加到父进程本身,直到它终止?
浏览 0
提问于2018-12-30
得票数 2
1
回答
在Unix中实现系统功能的混乱
、
用APUE实现Unix system函数 图8.22 system函数,不需要信号处理 #include <sys/wait.h> #include <errno.h> #include <unistd.h> int system(const char *cmdstring) /* version without signal handling */ { pid_t pid; int status; if (cmdstring == NULL) return(1);
浏览 0
提问于2019-03-19
得票数 1
回答已采纳
4
回答
如何分叉过程,这样的方式,收获孩子是不必要的
、
、
、
我似乎有一段模糊的记忆,即Linux中存在某种工具,它允许一个进程分叉(),使系统在不创建僵尸的情况下自动获取子进程。这个机制是什么?还是我的记忆错了?
浏览 4
提问于2016-10-26
得票数 3
回答已采纳
1
回答
避免C++中僵尸进程的产生
、
、
、
很奇怪的虫子,也许有人会看到我错过的东西。 我有一个C++程序,它从bash中分叉,然后将命令传递给它。 周期性地,命令将包含无意义的内容,bash进程将挂起。我使用semtimedwait检测到这一点,然后运行如下所示的一个小函数: if (kill(*bash_pid, SIGKILL)) { cerr << "Error sending SIGKILL to the bash process!" << endl; exit(1); } else { // collect exit status long count
浏览 3
提问于2012-10-15
得票数 2
回答已采纳
1
回答
退出并清理python叉
、
、
、
我试图用python中的叉编写套接字服务器的代码。当客户端连接时,将以某种方式创建一个新的分叉,并且这个叉进程将处理包括发送/接收在内的连接。 我在Linux centOS上运行了这个脚本,并使用htop/top监视资源,以查看显示了多少个分叉(任务)。问题是,当我使用os._exit(0)杀死一些分支时,htop不会被更改(当然,它必须通过销毁叉来减少),并且当我关闭python时,每件事情都将恢复正常( Ram的使用和任务)。 那么,当我使用os._exit(0)杀死某个分支时,我要做的是什么呢?另一方面,它会对htop产生影响,释放所有的资源,而不是等到它自己的父程序被杀死? 下面是创建
浏览 4
提问于2016-02-18
得票数 1
回答已采纳
3
回答
为什么需要僵尸进程?
、
、
、
、
维基百科基本上给出了我需要知道的所有关于僵尸进程的可能信息,但只是一句简单的话,说明在父进程创建另一个子进程的情况下,PID中的冲突将不会存在,这可能是useful..in。 那么这到底是怎么“有用”的呢?如果被命名的僵尸进程被移除而不是保留在那里,那么PID不是可用的吗? 或者,为什么僵尸进程应该存在,还有其他原因吗?
浏览 3
提问于2013-05-07
得票数 6
回答已采纳
1
回答
有没有办法在进程终止后或进程终止前获得proc/pid/status
、
我需要访问proc/pid/ VmPeak并获取process.For长进程的状态。我可以使用另一个线程获取它,但对于小进程,我总是得到一个错误(没有这样的进程).Is有任何方法或解决方法,我可以使用它来完成工作。我使用Python2.7,到目前为止,我已经完成了以下工作。 import os import subprocess import threading from shutil import copyfile import time rp = None br = 0 pid = -1 class MemoryThread (threading.Thread): def _
浏览 1
提问于2017-07-13
得票数 1
1
回答
终止java僵尸进程
、
、
我正在运行一个实验性的java应用程序,每次我终止或停止该应用程序时,都会创建僵尸进程。我知道僵尸并不是一个真正的问题,因为他们(应该)不会消耗资源。然而,我的RAM空闲空间比它应该得到的要少得多。下面是 ps aux | grep java 3052 8.5 0.0 0 0 ? Zl Sep24 127:24 [java] <defunct> 6644 0.9 0.0 0 0 ? Zl Sep24 13:20 [java] <defunct> 8325 0.7 0.0 0
浏览 0
提问于2012-09-26
得票数 2
回答已采纳
2
回答
如果进程,则删除子进程
、
、
我使用的是C++11和linux。我正在尝试使用fork()和popen()启动多个ssh命令,并监视ssh命令何时停止运行。当我在另一台计算机上终止ssh命令时,它似乎没有终止启动它的fork()子进程。子进程继续运行,直到我退出程序。当ssh命令在popen()退出运行时被调用时,我需要做些什么来杀除子进程?有没有比popen()更好的方法来调用ssh命令呢?
浏览 0
提问于2015-06-25
得票数 0
1
回答
为什么“子”进程在父进程之前完成?
、
、
、
这是给出的代码示例: # include <stdio.h> # include <unistd.h> void main() { static char *mesg[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}; int display(char *), i; for (i=0; i<10; ++i) display(
浏览 0
提问于2015-10-05
得票数 4
回答已采纳
2
回答
当父进程死亡时,僵尸进程是如何处理的?
、
Unix系统使用哪种技术来删除父进程已经终止的僵尸进程?
浏览 0
提问于2014-06-16
得票数 -1
回答已采纳
2
回答
是僵尸吗?
、
、
、
、
我对下面的代码有一些疑问。 #include <stdio.h> #include <sys/types.h> int main(void) { int pid=fork(); if(pid==0) sleep(5); printf("Hello World %d %d\n",getpid(),pid); if(pid>0) while(1){sleep(1);} if(pid==0) printf("In child process!\n"); return 0; } 子进程会终止
浏览 1
提问于2013-09-19
得票数 1
回答已采纳
1
回答
内核重试发送SIGCHLD,如果父进程失败一次收集终止状态
、
、
、
、
当父进程无法收集系统(内核)通过SIGCHLD发送的子进程的终止状态时,子进程将成为僵尸进程。 系统是否再次尝试为父进程发送此进程终止状态,以尝试收集其子进程的退出状态? 这样的事情会发生吗?僵尸进程会被从流程表中删除吗? 父程序是否再次尝试读取其子进程的终止状态?
浏览 2
提问于2015-08-05
得票数 1
回答已采纳
1
回答
调试器自杀释放僵尸
我正在从我的引擎得到解码帧,并在安卓系统中使用SurfaceView播放它。但是它会播放2-3秒,然后我的应用程序就会崩溃,错误是“调试器自杀来释放僵尸”。 请帮帮我。 我正在使用AndroidSDK2.1。
浏览 1
提问于2010-05-11
得票数 6
2
回答
太多PHP僵尸进程
、
、
我今天重新启动了apache守护进程,以重新加载配置文件,但之后,我开始看到系统上的许多php僵尸进程。数量从10到30不等,它们在死时都会占用一部分CPU。我应该从哪里开始调试这个问题? 我所做的修改是将每个孩子的最大请求从0(大量内存泄漏)减少到1000。我认为php进程来自一个从“哑”设备接收数据的脚本,即。他们发送带有GET参数的请求,而不关心结果。 一些数据: 不名-a # uname -a Linux <hostname> 2.6.32-71.29.1.el6.x86_64 #1 SMP Mon Jun 27 19:49:27 BST 2011 x86_64 x86_6
浏览 0
提问于2012-04-27
得票数 3
回答已采纳
1
回答
具有多个客户端的套接字服务器。杀死子进程
、
、
、
我一直在编写一台服务器,该服务器应该使用叉()处理多个客户端。我正在关闭套接字并退出子进程,但在处理完所有客户端之后,我得到了大量子进程(使用ps -ef检查过)。 我是不是漏掉了什么? #include <errno.h> #include <stdlib.h> #include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <string.h> #include <unistd
浏览 4
提问于2014-11-18
得票数 0
1
回答
如何在Linux内核中创建多个僵尸?
、
我正在为一个在Linux内核中寻找僵尸并收割僵尸的类写一个项目。 我已经找到了创建单个僵尸的代码,该僵尸在wait()之后收获,但我的程序必须收获很多僵尸,大约1000个。 我对内核操作/多线程非常陌生,我在网上找到的关于僵尸的资源要么太技术性,要么模棱两可。 这是我使用的代码: pid_t child_pid; child_pid = fork (); if (child_pid > 0) { sleep (60); } else { exit (0); } 再一次,我的问题是:我应该
浏览 0
提问于2013-02-15
得票数 0
回答已采纳
1
回答
僵尸程序在他们的父母死后会去哪里?
、
、
、
、
Zombie进程是一个已经完成执行的进程,但是在process表中仍然有一个条目(父进程没有读取其退出代码,换句话说,它还没有被“收获”)。 Orphan进程是一个父进程已经完成的进程,尽管它仍然在运行自己(它的父进程“已去世”,但它仍然“活着”)。在这种情况下,init将采用它并等待它。 因此,请考虑一下: int main(int argv, char *argc[]) { pid_t p=fork(); if (p<0) { perror("fork"); } // child if (p==0) {
浏览 3
提问于2014-06-21
得票数 7
回答已采纳
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux系统编程——特殊进程之僵尸进程
多进程编程中父进程如何回收僵尸进程
如何找到并杀死Linux数据中心服务器上的僵尸进程?
Linux进程管理
Linux查杀stopped进程
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券