Dubbio gestione memoria

mercoledì 12 luglio 2006 - 11.56

Muten Profilo | Junior Member

ho un dubbio amletico che mi perseguita :
ho una funzione che mi recupera dei dati dal db e mi ritorna una DataTable che chiamero RecuperaDati().

ho un altra funzione che la utilizza. il mio dubbio è su quale sia il metodo più efficente per gestirle.
metodo A

public Read()
{
DataTable dt = new DataTable();
try
{
dt = RecuperaDati();
return dt;
}
catch
{
return null;
}
}
metodo B

public Read()
{
try
{
return RecuperaDati();
}
catch
{
return null;
}
}
ps attendo parere degli esperti

alx_81 Profilo | Guru

Ciao!
Nel primo crei un istanza di un datatable, è l'unica differenza, ma direi che sono entrambe molto simili.. A mio avviso il secondo è più performante, ma di un "nonnulla"

Alx81 =)

http://blogs.dotnethell.it/suxstellino

paolopat Profilo | Junior Member

dubbio interessante...però stavo pensando :

il primo metodo istanzia nello stack dt e lo fa puntare ad un oggetto DataTable nella heap per poi copiarvi i dati ed usarlo nella return.
con il secondo metodo credo che alla fine utilizzando return RecuperaDati() venga comunque allocato un DataTable temporaneo per restituirlo al chiamante...forse è solo questa la differenza
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5