我已经写了一个C程序来将一系列字符写入文件--5个字母数字,后跟一个(char)(30)
,'记录分隔符'性格,重复...没有新行。该程序能够完美循环,直到达到第508次迭代--3048个字符 - 然后死亡,并说我无法访问该文件。Unix上C上的文件写入程序卡在508打开/关闭周期
该方案的结构就必须关闭并且每到这个序列被写入(脚本是一个较大的伪数据库模拟模块的一部分)时的文件的重新打开,所以有508个循环通过打开/写/关闭过程......在我开始剖析数据库模块代码(其中有很多行,所以我宁愿不必如果我可以避免它),我想知道是否有人知道很少遇到的读取Unix下的写入限制或在某个时间限制下文件中有3048个字符的问题,或文件中存在508 {30}的问题,或者这样的简单(但难以捕捉)的问题。我试图将读/写延迟几毫秒,而不是偶然发生,因为它会被打开,或像这样跳过自身,但不会有雪茄。
为什么你不给我们展示这个问题的最小样本?机会是你正在泄漏资源(缓冲区,文件描述符,其他东西) – sehe