热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

是否有独立于平台的非阻塞方式来判断文件描述符是否为磁盘文件(常规/目录)

如何解决《是否有独立于平台的非阻塞方式来判断文件描述符是否为磁盘文件(常规/目录)》经验,求助如何解决?

我正在寻找文件描述符的类型,而不会在内核中阻塞。我知道我可以使用,fstat(2)fstat也会获得各种元数据信息(访问时间等),这些信息可能会阻塞任意时间(尤其是在联网文件系统上)。

编辑:我正在寻找一个系统调用来执行此操作,生成一个单独的进程是不可接受的,因为生成一个进程并读取其结果肯定不是即时的。

唯一一点我需要知道的信息是真的,如果该文件描述符是一个磁盘上的“文件”( ,S_IFREGS_IFLNK),S_IFDIR或者没有。另外,如果我能说出它是套接字(S_IFSOCK),fifo(S_IFIFO)还是字符设备(S_IFCHR),也可以。

我非常确定任何内核都可以随时获得此信息,并且我很感兴趣是否可以在不阻塞的情况下将其显示到用户空间。

便携式解决方案(至少为macOS和Linux)将不胜感激。

谢谢!


推荐阅读
author-avatar
mobiledu2502879733
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有