Waitpid unknown return 在 gdb 中输入
Waitpid unknown return type in gdb
我尝试在不杀死父进程的情况下删除僵尸进程。我在 k8s 实例上的基于 debian 11 的容器中。
父级上的 SIGCHLD 不起作用,自然 SIGKILL 和 SIGTERM 不适用于 Zs。
我最近的做法是使用gdb
。通过附加到父进程并使用 call waitpid (44,0,0)
命令,我遇到了以下错误:
'waitpid' has unknown return type; cast the call to its declared return type
我理解这个问题并尝试以各种方式将其转换为 pid_t
但我无法解决问题。我应该如何正确地调用 gdb 来接受它(我对 return 值不感兴趣,我只想删除它们)?
I understand the problem and tried to cast it to pid_t
Try casting it in int.
(gdb) call (int) waitpid(13685, 0,0)
(gdb) detach
我尝试在不杀死父进程的情况下删除僵尸进程。我在 k8s 实例上的基于 debian 11 的容器中。 父级上的 SIGCHLD 不起作用,自然 SIGKILL 和 SIGTERM 不适用于 Zs。
我最近的做法是使用gdb
。通过附加到父进程并使用 call waitpid (44,0,0)
命令,我遇到了以下错误:
'waitpid' has unknown return type; cast the call to its declared return type
我理解这个问题并尝试以各种方式将其转换为 pid_t
但我无法解决问题。我应该如何正确地调用 gdb 来接受它(我对 return 值不感兴趣,我只想删除它们)?
I understand the problem and tried to cast it to pid_t Try casting it in int.
(gdb) call (int) waitpid(13685, 0,0)
(gdb) detach