Versions des environnements
>
>(1) Does the memory size increase ?
>(2) Did you use the task manager to verify that the memory size of the process increases
VFP leaking memory will NOT increase the workingsetsize, which is the thing visible in taskmanager.
It will eat up the sys(3050) allocated internal memory and when return of sys(1104) is nearly equal to the amount
set in sys(3050) you will feel it in not-rushmored queries. You can add memory via sys(3050) to again get rushmore,
but more and more memory will not be reclaimed in sys(1104),
giving you (currently needed memory+leaked object memory).
Been there as well...
>(3) When the execution times increase, do you infer that the memory has increased ? In case you do - not necessarily a good conclusion
I am with you in that, but it is also not totally unreasonable. Might be just a nearly fillted NTI waiting to be garbage collected,
thereby pruned of unneccessary entries adding to each variable search.
>(4) It may be worthwhile to decrease the buffer space of the process - try setting sys(3050, 1, 64*1024*1024) - same for sys(3050, 1, 64*1024*1024)
Good advice, but in my expirience only good for speedups up to 40%.
>(5) Try using sys(1104) to purge foxpro's cache just before returning from your function
Again, good advice, but not on a often running function, unless for identifying the leak.
>Frankly, it does not seem like a memory leak
Yupp, but smells like something similar.
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement