你提到的应该是 opendir()(不是 copendir),这是 POSIX 标准里用于打开目录流的 API,在 Ubuntu / Linux 下完全可以用于生产环境。
简单说明一下:
opendir() 是什么<dirent.h>DIR *readdir()closedir()✅ 稳定、成熟、生产级
可以,而且大量生产程序都在用,例如:
虽然 opendir() 本身没问题,但生产环境要注意:
DIR *dir = opendir(path);
if (!dir) {
perror("opendir");
return -1;
}
closedir()否则会泄漏文件描述符
readdir() 可能较慢getdents()(更底层)std::filesystemgetdents64()
opendir()在 Ubuntu 上完全可以用于生产环境,只要正确错误处理、资源释放即可。
如果你是在写 C / C++ 服务,或者关心性能 / 并发 / NFS,我可以给你更具体的建议或示例。