我的子进程如何退出才正确??
小弟编写了一个TCP的服务器客户端相互发送信息的程序,代码如下。程序可以运行的,可是现在的问题是:我fork出的子进程没有正确退出??
E%g0V0B-{tL.ORS环境如下: 现运行./server 然后运行./client,在client运行期间用ps -ef | grep server 观看进程信息,有2个进程,等到程序结束后再用同样的命令看,有一个变成了僵尸??但是你再运行一次client的时候僵尸不见了 ,还是2个进程,为什么? 那个不是僵尸??www.linuxeden.com$@#s*U|3[U:y
nils@linux-scj:~> ps -ef | grep server //第一次运行时的结果
,R*ar]fQ
H(rH7{nLinux伊甸园论坛nils 19325 18236 0 16:14 pts/2 00:00:00 ./server
,S/t9l+O0eA3cnils 19327 19325 0 16:14 pts/2 00:00:00 ./server
?jSnN3Ivnils 19329 18761 0 16:14 pts/4 00:00:00 grep server
m\v(hBLinux伊甸园论坛nils@linux-scj:~> ps -ef | grep server //运行结束后的结果
%J v9Gy~ vxn_
Cvnils 19325 18236 0 16:14 pts/2 00:00:00 ./server(yu/eFw)s(fy
nils 19327 19325 0 16:14 pts/2 00:00:00 [server] <defunct>www.linuxeden.comN4nn!I0p"J-~P p:Yz
nils 19335 18761 0 16:14 pts/4 00:00:00 grep server%`![:q|*T.g&~e/a
nils@linux-scj:~> ps -ef | grep server www.linuxeden.com sYZTo
nils 19325 18236 0 16:14 pts/2 00:00:00 ./server+ge9oK
g|.r\B
nils 19360 19325 0 16:17 pts/2 00:00:00 ./serverLinux伊甸园论坛
_5Ob"AK2z\tk
nils 19362 18761 0 16:17 pts/4 00:00:00 grep serverLinux伊甸园论坛]HT/L\&@
|