|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2005
Città: Arezzo
Messaggi: 1801
|
[VB6] Fare aspettare al programma che si verifichi un evento
Ciao Ragazzi,
ho un piccolo questio da porvi: in una routine ad un certo punto devo farsì che il programma aspetti che una variabile booleana (che viene usata in un timer) sia vera per poi continuare l'elaborazione. Secondo voi va bene fare un ciclo while vuoto o rischio di inchiodare il PC? Grazie, Marco.
__________________
iMac 27" - Apple iPhone 4 16GB Nero Ho concluso trattative con: cletopolonia - lele11 - Palli - darkn3o - Res3rator - andyxx - ABCcletta - DyingSweetly - streke - spiderman4 - mickyjenny - bottoni - tancrozio - perno |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Aug 2003
Messaggi: 72
|
Puoi far si che dopo che la variabile booleana è stata valorizzata venga scatenato un evento: raiseevent bla bla
Al verificarsi dell'evento fai eseguire la routine che vuoi
__________________
Visual Basic e dintorni Blog sullo sviluppo web |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Feb 2006
Città: Mi sono perso nello spazio...
Messaggi: 119
|
Purchè si abbia la certezza che la variabile venga trovata, altrimenti il ciclo gira a vuoto in eterno (leggi PC inchiodato)
A menochè non ci sia un codice di controllo per evitare l'inconveniente.
__________________
Il miglior dialogo è l'intesa ![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non è accettabile un'attesa attiva. Metti almeno un Sleep di qualche decina di ms. Evita prima di tutto che la CPU vada al 100% durante l'attesa.
Inoltre queste cose si gestiscono con i costrutti per la concorrenza messi a disposizione dal sistema operativo, non certo con le variabili booleane ![]() Ad esempio in questo caso ci sta bene un semaforo (con le API CreateSempahore, OpenSemaphore, ReleaseSemaphore). |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Nov 2005
Città: Arezzo
Messaggi: 1801
|
Quote:
il semaforo cui fai riferimento non lo conosco ma a naso mi sembra molto interessante. Ho provato a fare un breve ricerca di esempi vb6 su internet ma non ho trovato molto apparte la banale dichiarazione della API. Potresti scrivermi qualche stralcio di codice? Grazie mille, Marco.
__________________
iMac 27" - Apple iPhone 4 16GB Nero Ho concluso trattative con: cletopolonia - lele11 - Palli - darkn3o - Res3rator - andyxx - ABCcletta - DyingSweetly - streke - spiderman4 - mickyjenny - bottoni - tancrozio - perno |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:45.