我以这种方式从文件中读取整数:
int v, num;
for(;;) {
v = read(fd, &num, sizeof(int));
if (v == -1) {
fprintf(stderr, "Error in read()\n");
exit(EXIT_FAILURE);
}
if (v == 0)
break;
[...]
}
如果信号到达会发生什么?如何管理 errno == EINTR?如果 errno==EINTR,我是否必须重复阅读?