FastMM4 in dinamično naloženi dllji

Vse drugo, kar ne spada v nobeno zgornjo kategorijo.
Odgovori
TheAljosa
Prispevkov: 25
Pridružen: 29.10.2007 17:58:00

FastMM4 in dinamično naloženi dllji

Odgovor Napisal/-a TheAljosa » 20.10.2010 09:47:43

Zdravo,

Zanima me če se je že kdo ukvarjal s podobnim problemom. Imam aplikacijo in plugine v obliki dll datotek. Dosedaj uporabljam za memory manager kar FastShareMem želel pa bi FastMM4. FastMM4 sem preizkusil na sami aplikaciji brez dlljev in uspešno polovil vse memory leake tako da je sedaj glavna aplikacija recimo bullet proof. Podobno sem želel narediti tudi na dlljih ampak sem naletel na težave.

V exe in v dll dam po USES v prvo vrsto FastMM4 in zbuildam. Težava je da ko ugasnem aplikacijo mi kar naenkrat vrne AVje in memory leake iz glavne aplikacije in ne iz DLLja. Preveril sem vse parametre v INC datoteki od FastMM4.

Kolikor sem uspel ugotoviti je težava pri temu, da se DLLji dinamično nalagajo in odlagajo, kar povzroči posledično tudi odlaganje in nalaganje memory managerja. Pri statično naloženih dlljih je namreč initialization sekcija unitov poklicana prej pred nalaganjem aplikacije in potem tudi kasneje pri zapiranju in ta zadeva funkcionira ok. Pri dinamičnem nalaganju pa je vrstni red malo drugačen. Kolikor sem preučil zadevo je težava v vrstnem redu nalaganja. Enostavno ne vem kaj naj bi sedaj lahko naredil. Dinamičnem nalaganju se enostavno ne morem odreči.

Sem nekje zasledil, da je nekdo rešil težavo tako, da je FastMM4 dal v package in exe in dll zbuildal s tem packagom. Sicer ne vem kaj je s tem pridobil... ni jasnega nasveta oz. odgovora kako točno je to naredil.

Zanima me če ima kdo rešitev ali namig.

Hvala.
lp
Aljosa

Odgovori