Timer che scorre sempre

mercoledì 03 maggio 2006 - 14.51

lcabrin Profilo | Newbie

Ciao,

Come posso fare per realizzare un timer/contatore di tempo trascorso che funzioni su una form anche se su questa vengono fatte operazioni dispendiose in senso di risorse?

Mi capita che il timer che utilizzo si blocchi e non conti più il tempo correttamente perchè eseguo operazioni molto dispendiose.

Come posso risolvere il problema??

Grazie e ciao a tutti.
Loris

Brainkiller Profilo | Guru

>Ciao,
>Come posso fare per realizzare un timer/contatore di tempo trascorso
>che funzioni su una form anche se su questa vengono fatte operazioni
>dispendiose in senso di risorse?
>Mi capita che il timer che utilizzo si blocchi e non conti più
>il tempo correttamente perchè eseguo operazioni molto dispendiose.

Ciao Loris,
con un Thread. Qui c'è un post che ho csritto con un pezzo di codice in cui viene instanziato un ThreadStart, e poi il Thread:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=6667

Ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

lcabrin Profilo | Newbie

Perfetto! Ma ho solo un piccolo problema...

la funzione che richiamo nel thread deve aggiornare una label che si trova sul form... Mentre eseguo e aggiorno sta label in un momento non ben definito mi si blocca la form e il programma si frizza!!

Se tolgo l'aggiornamento della label e lascio che il thread aggiorni una variaibile statica quando decido di leggerne il valore noto che, nonostante le mille operazioni che posso aver fatto il valore corrsponde al tempo realmente passato....

C'è modo di aggiornare un controllo da un thread che non è quello corrente???

Grazie e buona giornata!
Loris

totti240282 Profilo | Guru

si devi ricorrere ai delegate.
C'è solo un capitano !!!!!!
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