|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
[J2ME e Java] svegliare un thread che è addormentato con sleep
Per svegliare un thread che è addormentato con sleep come posso fare ?
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Devi avere un riferimento a quel Thread, e con quello invochi interrupt(). Questo causa il rilascio di un'eccezione InterruptedException. Siccome il tuo interrupt() può non essere l'unica condizione in forza della quale è generata l'eccezione InterrtupedException, potresti usare un campo boolean per segnalare che l'eccezione è di quelle volute. Un cosa tipo:
Codice:
//pseudo
Thread runner;
boolean sleeping;
boolean èProprioQuella= false;
...blablabla
try {
sleeping = true;
Thread.sleep(XYZ);
} catch(InterruptedException ex) {
if(èProprioQuella) {
èProprioQuella = false;
}
}
...blabla
void wakeUp() {
if(sleeping && runner != null) {
èProprioQuella = true;
runner.interrupt();
}
...e poi qui devi decidere se rendere la richiesta bloccante o no
...per chi voglia svegliare il dormiente.
}
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Pensavo appunto che fosse interrupt... Però mi creava problemi se interrupt fosse arrivata al di fuori della sleep...
Comunque mi sono arrangiato in altro modo...dividendo l'intervallo di sleep in molti intervalli e controllando la variazione di un variabile ed in tal caso uscendo dal ciclo di sleep... Grazie |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Per Cionci
Cionci,
qualche settimana fa chiedevi informazioni su Java per palmari. Questa domanda e' correlata a quella precedente, suppongo. Sto valutando un lavoro da fare su un palmare Win CE. Questi tipi di lavori li ho sempre fatti in C (Visual), ma preferirei di gran lunga affrontarli in Java. Hai informazioni o suggerimenti in merito? Stai usando un palmare di questo genere? La tua esperienza mi suggerisce di stare alla larga da qualcosa, e di preferire qualcos'altro? Grazie per l'aiuto e scusa l'off-topic High Flying Sottovento
__________________
In God we trust; all others bring data |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sto programmando sul celullare... Volevo farlo sul palmare, ma quando sono venuto a conoscenza della situazione ho abbandonato...
Ti spiego: - per Windows Mobile non esistono VM ufficiali - le VM free sono ancora lontane dalla prima versione ufficiale o non supportano il profilo MIDP o addirittura si inventano le loro API - a pagamento sono disponibili alcune VM tra cui la J9 di IBM che si dice sia ottima, ma ovviamente è a pagamento - alcuni produttori forniscono una VM nei CD di supporto, tra questi HP, per gli Ipaq, (nemmeno per tutti, quelli più costosi in definitiva) che sembra fornisca un'ottima VM Quindi la tanto acclamata portabilità di Java, pur funzionando "abbastanza" sui cellulari, è praticamente NULLA sui palmari... Non cpaisco perchè la Sun non si metta a fara un VM ufficiale... Basterebbe fare due versioni per Windows Mobile...una per CPU Samsung e una per Intel e coprirebbero l'80% del mercato...proprio non capisco... http://www.berka.name/stan/jvm-ppc/java_for_pda.html Quindi a meno di avere tutti Ipaq con la stessa VM o di avere IBM J9 o di voler provare ad installarci Linux, sembra quasi che programmare in Java su un palmare sia un'utopia... A questo punto credo proprio che sia meglio .Net per i palmari... http://msdn.microsoft.com/netframewo...s/default.aspx Ultima modifica di cionci : 08-06-2006 alle 08:53. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Grazie per le info. Tempo fa avevo provato Waba, il quale e' carino ma come saprai non assomiglia poi tanto a Java.
Purtroppo il mio cliente si orientera' su un iPaq oppure su un palmare WinCe mai sentito prima, il quale e' orientato alle applicazioni industriali (robusto, con case speciale per ambienti ostili, lettore di codici a barre e tutto il resto). Mi tocchera' tornare a Embedded Visual... peccato High Flying Sottovento
__________________
In God we trust; all others bring data |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:31.



















