16/11/09 10:45
growning
Ciao, ho un problema con l'esportazione di dati da un dgv ad un pdf, utilizzando iText.
Praticamente una volta che parte l'esportazione, ovviamente più sono i dati contenuti della dgv e più tempo ci mette, e fin qui vabene, solo che oltre a più tempo, la memoria utilizzata dal processo del programma cresce a dismisura.
Con 5000 righe (circa) sfiora i 250MB di spazio.
Ho fatto la prova con 60000 righe e sono arrivato a 700MB .
Quindi più righe ci sono, più l'eccezione (incubo) OutOfMemory si avvicina.
Questo è un esempio di codice che utilizzo per passare i dati dalla dgv alla Table del documento pdf:
Qualcuno ha qualche idea per evitare che la memoria utilizzata dal mio processo cresca così tanto da rischiare di generare un outofmemory?
Praticamente una volta che parte l'esportazione, ovviamente più sono i dati contenuti della dgv e più tempo ci mette, e fin qui vabene, solo che oltre a più tempo, la memoria utilizzata dal processo del programma cresce a dismisura.
Con 5000 righe (circa) sfiora i 250MB di spazio.
Ho fatto la prova con 60000 righe e sono arrivato a 700MB .
Quindi più righe ci sono, più l'eccezione (incubo) OutOfMemory si avvicina.
Questo è un esempio di codice che utilizzo per passare i dati dalla dgv alla Table del documento pdf:
Dim tbh As New Table(dgv.ColumnCount) Dim cel As New Cell with tbh For irow As Integer = 0 To dgv.RowCount - 1 For icol As Integer = 0 To dgv.ColumnCount - 1 cel = New Cell(dgv.Item(icol, irow).Value) .addCell(cel) next next end with
Qualcuno ha qualche idea per evitare che la memoria utilizzata dal mio processo cresca così tanto da rischiare di generare un outofmemory?
aaa