|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
[java] implementare un timer...
Salve, stò scrivendo 1 piccolo benchmark e mi serve 1 modo per dire quanto ci si ha impiegato a completare tutte le ricorsioni...
|
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: May 2003
Messaggi: 119
|
La funzione System.getCurrentMillis() t ritorna 1 long ke corrisponde ai millisecondi ke sono passati dal 1-1-1970.
Basta ke la fai prima e dopo del codice critico e fai la differenza |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
Grazie!!!
Cerco nella documentazione della libreria come implementarla ![]() |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Quote:
|
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
Ok, funziona perfettamente.
Grazie a tutti. ![]() Ora mi servono 2 cose: 1)un modo per far sì che usi al max la cpu 2)è possibile farlo eseguire in tutti gli ambienti senza installare la j2se della sun? P.s. devo scrivere 1 minimo di documentazione, ma quando ho finito, vi va di provarlo? |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
1)Cerca su google "algoritmi banchmarking". Solitamente si usa il calcolo di alcune serie numeriche...
2)Come puoi eseguire un programma java senza il jre? Al limite puoi utilizzare dei tool tipo InstallAnyware che includono nel pacchetto di installazione il jre da te scelto. Oppure documentarti su come creare degli eseguibili, ma in quel modo limiti la tua piattaforma a Windows, e io lo voglio provare sul mio pc linux! ![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
1)nn ho capito come dovrei fare, ti spiego, così gli assegna al max il 50% della cpu sul mio pc... io vorrei che gliene assegnasse il 100% (visto da ctrl+alt+canc) da win xp
2)grazie, appena ho tempo provo. Posso creare diverse versioni per garantire la portatilità: ![]() ![]() |
![]() |
![]() |
![]() |
#8 |
Member
Iscritto dal: May 2003
Messaggi: 119
|
Prova ad aumentare la priorità del thread
Dovrebbe essere Thread.setPriority(MAX_PRIORITY) o una cosa del genere |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
il metodo è quello ma non ho capito come si usa, avete voglia di spiegarmelo?
|
![]() |
![]() |
![]() |
#10 |
Member
Iscritto dal: May 2003
Messaggi: 119
|
Il metodo dice allo scheduler d dedicare + tempo x qel thread (sottoprocesso) ma in teoria vale solo x i thread nella JVM e qindi nn dovrebbe aiutarti grankè
|
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
SOno ancora in alto mare....
Non ho proprio capito come implementare la cosa.... help |
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Dec 2002
Città: Pordenone
Messaggi: 556
|
Ma mi sembra strano, perchè comunque ho visto che sul mio pc (win xp) quando faccio partire un programma java, si prende sempre il 100% del processore!!
Sei sicuro che il grafico del task manager sale sopra il 50%??????????????' Ti spiego, con gli utlimi P4 (quelli vanno tipo con il doppio processore, anche se ne hai installato uno solo fisicamente) se non hai il service pack 1 riconosce solo una singola cpu e quindi non supera il 50% dell'utilizzo ![]() Fai un programma per numeri primi che vada in loop infinito e vedi cosa succede! CIAO PS: io di solito per prendere i tempi uso Sistem.currenttimemillis() che cmq dovrebbe essere identico a quello che ti hanno detto prima. Restituisce infatti un long e facendo la differenza di end - start trovi il tempo impiegato in millisecondi! dove start .....lo inizializzii appena prina di far partire il ciclo / ricorsione end ..... lo inizializzi appena finito il calcolo
__________________
My config-> Cpu: Amd_64 3000MHz; Mobo:Chaintech Znf3 Zenith; Ram:: 1024MB DDR400 Kingston Scheda video: Asus 7600gs; HDD: 2x Segate 80gb with raid1, 1x Maxtor 80gb; Lettori ottici: DVD Plextor px-116A, DVD+RW LG, Monitor: ViewSonic VX900, Stampante OKI C5300. |
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Oct 2001
Città: Torino
Messaggi: 10532
|
sì sì ho p4 ht e sp1, 2 cpu rilevate
![]() |
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: Dec 2002
Città: Pordenone
Messaggi: 556
|
e allora penso che il problema sia proprio quello!
prova su un'altra macchina, altrimenti il consiglio che ti dò è quello di provare ad aggiornare tutti i pacchetti java....... cmq il p4 dovrebbe essere Hiperfreding (o come cavolo si scrive!) :P sono very ignurante in inglese ![]() CIAO
__________________
My config-> Cpu: Amd_64 3000MHz; Mobo:Chaintech Znf3 Zenith; Ram:: 1024MB DDR400 Kingston Scheda video: Asus 7600gs; HDD: 2x Segate 80gb with raid1, 1x Maxtor 80gb; Lettori ottici: DVD Plextor px-116A, DVD+RW LG, Monitor: ViewSonic VX900, Stampante OKI C5300. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:27.