I am using the CAA File Library. In my program, I need to save a number of files while the program is running, as values change. The files will be saved in pairs, because there is a log file and a configuration file. In all, the program will require about 160 files.
Since the files only have to be saved when a change is made, then usually, these files will only be saved in pairs.
However, on a restart, all of the files need to be restored. So, I would need to open and read about 160 files.
In my testing, I've noted that if I attempt to open more than about 6 files at the same time, I get the Error Code 5113 - 'Job creation of AsynchManager failed' while opening the files. However, it appears the files open OK, because the data is being restored to the program properly. And, when I write files, the file writes seem to work OK, because the error code returned when I write the file is 0.
However, if I open more than about 8 files on a restart, I get the same error code, but in this case, I can no longer write files either - I get an error code of 5113 when I attempt to write the files.
I am obviously running up against some limit in the CAA Asynchronous Manager. My questions are:
1. What is the limit that I am hitting? What resource is limited, and what is the limit?
2. Is this a hard limit, or is there anyway to modify this limit?
3. Is there some parameter that I can monitor in the program that will tell me how many of the limited resources I am using? If there is, then I can modify my program to check that parameter before I attempt to open a file.
4. I am using the CAA File library, which apparently allows file actions to be performed asynchronously. If I were to use the SysFile library, would I be able to open more files?