in reply to sequencial file naming
However, the big question is, why?. This looks like a typical XY problem. You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y.
All of the methods I mentioned need some form of locking - lock the file, or make sure not two processes go searching for the "next" number. This might make your program more complex, and potentially slow. And that's in the probably relatively rare case of adding a new file. It looks like you will be getting a lot of files, and a single directory with a lot of files will mean accessing a file by name is going to be slow (linear search through the directory data block).
I don't know what you want to do with the files, but my gut feeling is shouting "shouldn't you use a database?".