|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jun 2001
Messaggi: 40
|
Un problema non banale
per far capire il mio problema vado con un esempio:
si hanno da controllare continuamente 10 PC connessi ad una LAN e si vuole scrivere un programma sufficientemente performante. Io ho scritto una cosa del tipo: while(1) { ciclo for(i =ip_primo_pc; i< ip_ultimo_pc) e fa delle cose sui dieci PC; } il problema è che quando è in esecuzione non è possibile fare altro, nemmeno ad esempio, spostare la form sul desktop. Ci sono programmi analoghi e che effettuano dei controlli, ma coi quali è sempre possibile interagire in tempo quasi reale: qual'è il loro segreto ? grazie 1000
__________________
La vita è una bella donna che si da |
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
DEvi scrivere un programma MultiThreading.
In particolare ti servira' per liberare il thread principale, quello della finestra, per permettergli veramente di essere libero di fare solo la finestra...
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
#3 |
|
Member
Iscritto dal: Jun 2001
Messaggi: 40
|
devo implementare quindi una DLL ?
__________________
La vita è una bella donna che si da |
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Devi usare in linguaggio di programmazione che permetta di usare il multithreading.
Molti ce l'hanno gia' nativamente, altrimenti dovrai dotarti di librerie per il multithreading.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 499
|
devi rendere il programma multi-thread cioè "diviso" in più processi.. ad esempio un thread gestirà la finestra del programma e un altro resterà in ascolto..
__________________
|
|
|
|
|
#6 | |
|
Member
Iscritto dal: Jun 2001
Messaggi: 40
|
Quote:
io uso il borland builder c++ che dovrebbe essere quello giusto, o no ?
__________________
La vita è una bella donna che si da |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 499
|
Quote:
in C++ puoi ad esempio usare le api win32 per creare thread se ti trovi su windows..
__________________
|
|
|
|
|
|
#8 | |
|
Member
Iscritto dal: Jun 2001
Messaggi: 40
|
Quote:
intendevi allora con CreateProcess() e simili ?
__________________
La vita è una bella donna che si da |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
|
Quote:
ciao!
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 499
|
si.. più o meno..
quoto.. se ti è possibile è meglio..
__________________
Ultima modifica di marko.fatto : 18-03-2008 alle 21:27. |
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
beh..
non so cosa sia createProcess, ma dal nome direi proprio di no. Un thread è diverso da un processo. Anche se puoi creare + processi, di solito si crea un processo unico e in questo vengono fatti girare + thread. In java e in .net ad esempio non appena si crea un' applicazione con interfaccia grafica si hanno già a disposizione automaticamente due thread: l'Event Dispatcher Thread, in cui girano tutti i componenti grafici, e il thread del main. Cmq anch'io ti consiglio di usare java o .net..
__________________
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Thread chiuso
| V |
|
|
|
|
#13 |
|
Member
Iscritto dal: Jun 2001
Messaggi: 40
|
ad ogni modo ho risolto in C++ con CreateThread() e TerminateThread()
__________________
La vita è una bella donna che si da |
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:24.



















