小编don*_*kon的帖子

waitpid 返回 pid=0 和 WIFEXITED=1 如何获取 pid?

脚步:

在不同的程序组中派生并启动进程
使用 SIGTSTP
停止进程 使用 SIGCONT 重新启动
进程 进程结束

问题:SIGCHLD 处理程序有:

waitpid(-1, &status, WNOHANG | WUNTRACED);
Run Code Online (Sandbox Code Playgroud)

返回 pid=0 和 WIFEXITED=1 后,进程退出,但我无法获取 pid?我需要 pid。

从手册页来看:“如果指定了 WNOHANG 并且 pid 指定的一个或多个子进程存在,但尚未更改状态,则返回 0”
但状态似乎已更改为退出。

c linux pid waitpid

3
推荐指数
1
解决办法
3716
查看次数

用C写入的printf相当于什么?

你怎么做到这一点:

printf("I would like %d tomatoes", numTomatoes);
Run Code Online (Sandbox Code Playgroud)

有:

write(STDOUT, "HOW?", 4);
Run Code Online (Sandbox Code Playgroud)

是否有某种类型的预处理使它成为一个char数组然后我可以找到长度并将其打印出来?

上下文:我需要在信号处理程序中使用write而不是printf.

c printf

1
推荐指数
1
解决办法
558
查看次数

标签 统计

c ×2

linux ×1

pid ×1

printf ×1

waitpid ×1