linux - gdb中的Waitpid未知返回类型
问题描述
我尝试在不杀死父进程的情况下删除僵尸进程。我在 k8s 实例上的基于 debian 11 的容器中。parent 上的 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 来接受它(我对返回值不感兴趣,我只想删除它们)?
解决方案
我了解问题并尝试将其转换为 pid_t 尝试将其转换为 int。
(gdb) call (int) waitpid(13685, 0,0)
(gdb) detach
推荐阅读
- vba - VBA-Word:在文档中的所有日期之前添加换行符
- python-telegram-bot - python-telegram-bot 键盘没有出现
- php - 致命错误:在第 28 行调用一个成员函数 prepare() on null
- bash - 读取所有 txt 文件并为每个文件分配一个符号链接
- java - Eclipse 中的 Gradle 多项目设置
- javascript - 在 Dexie 迭代中使用 setTimeout
- java - 如何解决 Maven 提供的范围问题
- visual-studio-code - 切换资源管理器栏
- nativescript - 页面路由器出口全局点击事件
- git - 如何为多项目合并设置 git