我只是在玩 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 > CHILD){
sleep(30);
}
else return EXIT_FAILURE;
return EXIT_SUCCESS;
}
虽然我可以在本机 Linux 上使用ps
看到僵尸进程,但在 WSL 上看不到僵尸进程。谁能解释为什么?