Si tratta di una windows application, per la precisione è per windows mobile.Originariamente inviato da alka
Che tipo di applicazione stai realizzando?
E' una Windows Application o una Console Application (per il prompt)?
Ho fatto una gran quantità di prove, ed ho notato che il problema è ricorrente anche in altre situazioni. Per esempio quando visualizzo su schermo un'animazione, realizzata con un timer allo scadere del quale viene sostituito il frame precedente con il successivo. Si verifica sempre lo stesso problema: se eseguo l'animazione dal thread principale, non c'è modo di "fermare" l'esecuzione del codice durante la visualizzazione dell'animazione. Se la eseguo da un altro thread, mettendo in wait il principale con il metodo AutoResetEvent.WaitOne(), il thread si conclude subito e dell'animazione mi va bene se riesco a vedere il primo frame... in questo modo tra l'altro, non concludendosi l'operazione, non arrivo neanche a chiamare l'evento che sblocca il thread principale, e quindi mi rimane tutta l'applicazione bloccata.
La conclusione a cui sono giunto è che l'unico modo per inserire dei "tempi morti" è quello di farlo nel thread principale, dato che l'applicazione rimane viva anche quando tutto il codice è stato eseguito, e collegare le azioni in sequenza solo tramite eventi, lasciando perdere il ciclo while...
Probabilmente sono stato un po' poco chiaro... appena ho il tempo inserisco qualche frammento di codice come esempio.