INFO: Using Temporary Files Can Improve Application Performance (103237)
The information in this article applies to:
- Microsoft Win32 Application Programming Interface (API), when used with:
- the operating system: Microsoft Windows NT 3.1
- the operating system: Microsoft Windows NT 3.5
- the operating system: Microsoft Windows NT 3.51
- the operating system: Microsoft Windows NT 4.0
- the operating system: Microsoft Windows 2000
- the operating system: Microsoft Windows XP
This article was previously published under Q103237 SUMMARY
If you use temporary files, you can significantly increase the performance
of your application.
MORE INFORMATION
By using CreateFile() with the FILE_ATTRIBUTE_TEMPORARY flag, you let the
system know that the file is likely to be short lived. The temporary file
is created as a normal file. The system needs to do a minimal amount of
lazy writes to the file system to keep the disk structures (directories and
so forth) consistent. This gives the appearance that the file has been
written to the disk. However, unless the Memory Manager detects an
inadequate supply of free pages and starts writing modified pages to the
disk, the Cache Manager's Lazy Writer may never write the data pages of
this file to the disk. If the system has enough memory, the pages may
remain in memory for any arbitrary amount of time. Because temporary files
are generally short lived, there is a good chance the system will never
write the pages to the disk.
To further increase performance, your application might mark the file as
FILE_FLAG_DELETE_ON_CLOSE. This indicates to the system that when the last
handle of the file is closed, it will be deleted. Although the system
generally purges the cache to ensure that a file being closed is updated
appropriately, because a file marked with this flag won't exist after the
close, the system foregoes the cache purge.
Modification Type: | Major | Last Reviewed: | 4/15/2004 |
---|
Keywords: | kbAPI kbFileIO kbinfo kbKernBase KB103237 |
---|
|