Newsgroup: it.comp.lang.visual-basic
Titolo: lentezza (presunta) di un aplicativo

ho scritto un applicativo (di valutazione  di visual basic 2005 express 
edition)
composto da un bottone che avvia una griglia visualizzante un semplice 
tabella di un database
(niente inner, query ecc...)
l'applicativo è molto lento sia al lancio delle exe ma sopratutto al click 
del bottone
dove carica il database.
Lo stesso applicativo realizzato in C++ della Borland però, ambiente da cui 
provengo
è invece quasi istantaneo).
Dove può risiedere il problema, ammesso di trovarmi di fronte ad un 
problema, o è una lentezza
proprio del Visual basic?

 proprio del Visual basic?
Ciao,
così, su du piedi, senza sapere altro del tuo applicativo, posso dire che 
la lentezza percepita è molto probabilmente dovuta ai meccanismi del just 
in time compiler di .NET
Qualsiasi compilatore .NET produce un codice intermedio (MSIL) che, nel 
momento dell'esecuzione dell'assembly (in .NET, un assembly, è un 
qualsiasi file "eseguibile", exe o dll che sia) viene compilato "just in 
time" nel momento in cui, ogni singola funzione, metodo, ecc. ecc. viene 
invocato.
Prova a chiudere la form con la griglia, e successivamente riaprila senza 
chiudere l'eseguibile...
A questo punto, dovresti notare la differenza.
Ciao
-- 
Gianluca Cannalire
Microsoft MVP/MCP - Visual Basic
http://www.visual-basic.it
http://community.visual-basic.it/gianluca
 

 in time compiler di .NET
Io ho notato che Paint.NET risulta sempre velocissimo, anche nel 
caricamento. Utilizza qualche tecnica particolare?
-- 
news:it-alt.comp.software.openoffice : Il newsgroup dedicato a
OpenOffice.org, la suite open source di applicazioni per ufficio.
Saluti, VITRIOL

 caricamento. Utilizza qualche tecnica particolare?
Del buon codice sorgente, forse??? :))))
A parte gli scherzi, non saprei che dirti... appena ho un po' di tempo, lo 
ri-scarico (ho dei sorgenti "vecchissimi") e magari ti sarpò dire 
meglio...


 A questo punto, dovresti notare la differenza.
passiamo da un tempo di circa 6 secondi per avviare la griglia ad uno di 5 
secondi
per riavviarla dopo la sua chiusura.
mi sembra comunque sempre tanto.
Penso: non potrebbere essere il server (sql server 2005 express edition) ad
impiegare parecchio tempo a caricare la tabella, (22000 righe) ??
cosa ne dici 

 A questo punto, dovresti notare la differenza.
passiamo da un tempo di circa 6 secondi per avviare la griglia ad uno di 5 


 caricamento. Utilizza qualche tecnica particolare?
Usa NGEN.
All' atto dell' installazione fa partire un file .bat che compila 
direttamente l' exe con NGEN.
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
My Blog: 
http://blog.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
Se un circuito funziona al primo tentativo è perchè il problema è molto
più nascosto e subdolo di quanto tu possa pensare...
E apparirà nel momento in cui farà il massimo danno 

 righe) ??
Come lo stai utilizzando SQL Server 2005 Express???
In modalità "User Instance"?
Sulla stessa macchina, o su una in rete?
Usate query "in-line" o stored procedure?
P.S. Ma siete sicuri di voler caricare 22.000 record tutti in un sol 
colpo?


 impiegare parecchio tempo a caricare la tabella, (22000 righe) ??
Ho già letto di questi problemi e l'unica soluzione valida è di caricare 
soltanto i dati che si vedono; quelli che visualizzi se clicchi sulle 
freccie uno ad uno oppure pagina per pagina li carichi successivamente.
Devi scrivere del codice in più, ma non ho letto in giro nessun'altra 
soluzione migliore.
Anch'io fra poco dovrò pensare a questo implementamento, quindi non 
posso darti ulteriori consigli.
Christian