36得票5回答
如何等待所有/任意 pthread 完成?

我希望我的主线程在退出之前等待所有(p)线程完成,这些线程由于不同的原因经常出现和消失,我真的不想跟踪它们的状态 - 我只想知道它们何时结束。 wait()可以用于子进程,当没有子进程时返回ECHILD,但是似乎不适用于(p)线程。 我真的不想麻烦地记录每一个未完成的线程(因为它们来了又走...

24得票1回答
O_NONBLOCK是设置在文件描述符还是底层文件上的属性?

根据我在The Open Group网站上阅读fcntl、open、read和write的内容,我的印象是无论是否在文件描述符上设置了O_NONBLOCK,也就是使用了非阻塞I/O,这应该是文件描述符的属性而不是底层文件的属性。作为文件描述符的属性意味着,例如,如果我复制一个文件描述符或打开另...

21得票5回答
针对文件描述符(即int fd而非FILE* fp)的类似于“fprintf”的函数

也许我只是看漏了,但是是否存在一种类似于fprintf函数的文件描述符等效函数,或者甚至可以在它们之间临时切换的方法?

17得票7回答
我需要一个extern "C"块来包含标准的POSIX C头文件吗?

在C++程序中,我需要使用extern "C" {}块来包含标准C头文件吗?只考虑在C++中没有对应项的标准C头文件。 例如:extern "C" { #include <fcntl.h> #include <unistd.h> }

17得票3回答
微软 Windows 7 的 POSIX 实现目前处于什么状态?

在/为Windows 7中是否有完整的POSIX实现(我想到的是Windows Services for UNIX)? 它是否在操作系统的每个版本中都可用(看起来不是)? 它如何添加/改进或破坏之前的MS Windows POSIX实现? 在哪里可以找到有关Windows 7中Micro...

13得票2回答
O_LARGEFILE是否只需要用来写大文件?

如果我想要写一个大文件 (O_WRONLY) 或者追加到一个大文件 (O_APPEND | O_WRONLY),是否需要使用 O_LARGEFILE标志? 从 CLucene-dev 邮件列表中一个名为 "Cannot write >2gb index file" 的帖子中可以看出,似乎需要...

8得票3回答
waitpid是否为已经退出的子进程提供有效的状态信息?

如果我使用fork创建了一个子进程,并且在父进程调用waitpid之前子进程退出,那么由waitpid设置的退出状态信息是否仍然有效?如果有效,那么它何时变为无效;即,我如何确保可以在任意时间后调用waitpid获取子进程的有效退出状态信息,并如何“清理”(告诉操作系统我不再对已完成的子进程的...

8得票2回答
SIGKILL信号处理

如果一个Linux进程正在等待I/O(即处于状态),并且针对它发出了信号,在终止(状态)时,它会通过或状态吗? 换句话说,为了处理系统中断,例如由生成的中断,进程是否必须经过或状态? 在正常情况下,进程可以处理来自内核的中断,并且知道具有相当矛盾的目的,即杀死不响应的信号,我对被杀进程有多...

7得票1回答
timer_t在其基础上是什么?

Gcc和printf指出在我的linux上,timer_t是指针。但是这个指针指向什么,而且NULL是否为有效的计时器ID? 此外,它是否是平台特定的事情,例如在linux上是指针,在macOs上是整数,在BSD上是其他类型。

7得票1回答
我该如何为我在pty下运行的进程设置终端前台进程组?

我写了一个简单的包装脚本,用于在命令失败时重复执行,名为retry.py。然而,由于我想要看到子命令的输出,我不得不使用一些pty技巧。这对像rsync这样的程序运行良好,但是像scp这样的其他程序应用了额外的测试来显示诸如进度表之类的内容。 scp代码具有广泛的测试,大致如下: getp...