Bonsoir,
Voici le background:
L'application est 32 bits et développée avec VB .NET Framework 1.1
C'est un service qui utilise tout une ribambelle de dll.
L'OS est Windows 2003 Enterprise 32 Bits avec 4 Gb de RAM.
/3GB est dans le boot .ini l'exe ext compilé avec l'option /LARGEADRESSAWARE
Théoriquement, il est possible d'allouer 3 GB avec ce genre de config.
Cela fonctionne, je l'ai vérifié avec un petit programme en C++ et avec TestLimit.exe.
A ce moment la, les compteurs Virtual Butes, Private Bytes et Working Set on a peut près la même valeur (proche de 3Gb) car j'initialise ma zone mémoire.
Si je n'initialise pas, Working Set est tout petit (c'est normal).
Mon problème est que assez fréquemment, nous avons des OutOfMemory Exceptions alors que jamais le processus n'atteint son maximum au niveau de private byte et de Working Set. Par contre, Virtual Byte est très proche des 3 GB.
Comment je pourrai sans aucun doute explique cela?
Merci a vous
jko
Partager