1

コードは次のようになります。

int fd = open(filename, O_RDONLY);

"max open files" は 1024 です。このプロセスは何百ものファイルを開く可能性があります。最初は、うまく機能します。しばらくすると、open は 0 を返します。理由はわかりません。ヘルプ!!!よろしくお願いします!

ps:そうではありませんint fd = open(filename, O_RDONLY) == -1;

4

3 に答える 3

4

が 0 を返す場合open、開いたばかりのファイルを使用する場合は fd 0 を使用する必要があることを示しています。

stdinを閉じた可能性がありますか?

于 2013-04-07T02:48:37.683 に答える