C++ 在mac os上创建临时文件时出错

C++ 在mac os上创建临时文件时出错,c++,c,file-io,osx-snow-leopard,C++,C,File Io,Osx Snow Leopard,Om mac OS 10.6.7,我正在临时目录中创建一些文件。过了一段时间,我开始在opensyscall中获得失败,返回的错误是24,这意味着磁盘已满。我检查了磁盘空间,仍然有80GB可用空间。临时目录是否有任何限制或特殊配额?我使用以下标志打开文件: 开放(路径,O|RDWR | O|CREAT,S|IRUSR | S|IWUSR) 在这一点上,RAM的使用率相当高(大约90%),但我认为它不应该影响文件的打开,尤其是当返回的错误是磁盘已满时 有人遇到过这样的情况吗?错误24是EMFILE

Om mac OS 10.6.7,我正在临时目录中创建一些文件。过了一段时间,我开始在opensyscall中获得失败,返回的错误是24,这意味着磁盘已满。我检查了磁盘空间,仍然有80GB可用空间。临时目录是否有任何限制或特殊配额?我使用以下标志打开文件: 开放(路径,O|RDWR | O|CREAT,S|IRUSR | S|IWUSR)

在这一点上,RAM的使用率相当高(大约90%),但我认为它不应该影响文件的打开,尤其是当返回的错误是磁盘已满时


有人遇到过这样的情况吗?

错误24是EMFILE,表示打开的文件太多。

此错误代码24用于
EMFILE

这表示当前进程已经打开了最多的文件,因此现在无法打开更多的文件。因此,请更改系统中每个进程打开文件的最大限制,或者在使用后尝试关闭文件(如果可能的话)


如果我记得的话,默认情况下,一个进程一次打开的最大文件数是20

哦,是的!谢谢我没有正确地查看错误描述。今天的系统有更高的值(我的值是1024)。用“ulimit-n”检查它。