RD3: Memory leak e tooltip
copia linkDescrizione del difetto
Il framework RD3 non distruggeva correttamente il tooltip usato come QBETip dei pannelli.
Effetti del malfunzionamento
- Chiudendo una videata tutti gli oggetti javascript ad essa correlati non venivano distrutti dal Garbage Collector causando quindi un aumento sempre crescente della memoria allocata.
Soluzioni
Questo difetto è stato risolto nella versione 11.0. Per le versioni precedenti è sufficiente personalizzare la seguente funzione nel file custom3.js della propria applicazione:
MessageTooltip.prototype.Unrealize = function()
{
if (this.Realized)
{
// Chiamo la classe base
PopupFrame.prototype.Unrealize.call(this);
//
// Rimuovo i riferimenti dal DOM
this.ImgObj = null;
this.TitleBox = null;
this.MsgBox = null;
this.Whisker = null;
this.CloseObj = null;
this.Owner = null;
}
else
{
// Mi tolgo comunque dalla mappa degli oggetti perche'
// i tooltip vengono aggiunti alla mappa anche nella Init
RD3_DesktopManager.ObjectMap.remove(this.Identifier);
}
}
Funzionalità interessate
Apertura/chiusura di videate
Note
- Malfunzionamento relativo alla richiesta di assistenza 001272-2011.
Ultima modifica: 23/03/2021 / Validità: da 11.0.4800