Rewrite the BIGBLOCKFILE implementation for better performance.

This commit is contained in:
Andrew Lewycky 2000-03-17 15:08:25 +00:00 committed by Alexandre Julliard
parent 92d76bd7b5
commit 1529f58467
2 changed files with 392 additions and 475 deletions

File diff suppressed because it is too large Load Diff

View File

@ -135,7 +135,6 @@ struct StgProperty
*/ */
typedef struct BigBlockFile BigBlockFile,*LPBIGBLOCKFILE; typedef struct BigBlockFile BigBlockFile,*LPBIGBLOCKFILE;
typedef struct MappedPage MappedPage,*LPMAPPEDPAGE; typedef struct MappedPage MappedPage,*LPMAPPEDPAGE;
typedef struct BigBlock BigBlock,*LPBIGBLOCK;
struct BigBlockFile struct BigBlockFile
{ {
@ -145,11 +144,12 @@ struct BigBlockFile
HANDLE hfile; HANDLE hfile;
HANDLE hfilemap; HANDLE hfilemap;
DWORD flProtect; DWORD flProtect;
MappedPage *maplisthead; MappedPage *maplist;
MappedPage *victimhead, *victimtail;
ULONG num_victim_pages;
ILockBytes *pLkbyt; ILockBytes *pLkbyt;
HGLOBAL hbytearray; HGLOBAL hbytearray;
LPVOID pbytearray; LPVOID pbytearray;
BigBlock *headblock;
}; };
/* /*