微软提供的用来生成临时文件的API只支持同时存在最多26个临时文件。
http://coding.derkeiler.com/Archive/Fortran/comp.lang.fortran/2011-01/msg00611.html
亮点:
I found the reason for the second problem - thanks to the information for the third. The algorithm used by Microsoft to generate temporary files allows only 26 files ("a" to "z") - or at least only 26 files which exist at any given time.
From: http://msdn.microsoft.com/en-us/library/34wc6k1f%28v=VS.80%29.aspx
"_mktemp preserves base and replaces the first trailing X with an alphabetic character. _mktemp replaces the following trailing X's with a five-digit value; this value is a unique number identifying the calling process, or in multithreaded programs, the calling thread."
1) the number of scratch file is it voluntarily limited to 26 ? and
why ?
First question: Yes. Second question: No idea - ask Microsoft. Educated guess: One never needs more than 26 scratch files (really!) and the implementation is easy as the one can fit the 5-digit process numbers into the remaining space. (POSIX has basename + 6 "X", where the X are replaced mktemp.)
I think gfortran has to work around this stupid implementation choice.
微软提供的用来生成临时文件的API只支持同时存在最多26个临时文件。
http://coding.derkeiler.com/Archive/Fortran/comp.lang.fortran/2011-01/msg00611.html
亮点:
I found the reason for the second problem - thanks to the information for the third. The algorithm used by Microsoft to generate temporary files allows only 26 files ("a" to "z") - or at least only 26 files which exist at any given time.
From: http://msdn.microsoft.com/en-us/library/34wc6k1f%28v=VS.80%29.aspx
"_mktemp preserves base and replaces the first trailing X with an alphabetic character. _mktemp replaces the following trailing X's with a five-digit value; this value is a unique number identifying the calling process, or in multithreaded programs, the calling thread."
1) the number of scratch file is it voluntarily limited to 26 ? and
why ?
First question: Yes. Second question: No idea - ask Microsoft. Educated guess: One never needs more than 26 scratch files (really!) and the implementation is easy as the one can fit the 5-digit process numbers into the remaining space. (POSIX has basename + 6 "X", where the X are replaced mktemp.)
I think gfortran has to work around this stupid implementation choice.
HxLauncher: Launch Android applications by voice commands