|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
[C++] ThreadPool
Ho implementato un threadpool in c++ in cui accodo un puntatore a metodo che poi verrà richiamato non appena un thread è disponibile.
Ora il problema è chiaramente che un oggetto che accoda del lavoro potrebbe essere distrutto per i motivi più vari e non avrei modo per gestire questa condizione. Come si può implementare un threadpool sicuro? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Spiega meglio, che intendi per "un oggetto che accoda del lavoro potrebbe essere distrutto" ?
Ti riferisci al fatto che chi ha accodato il lavoro potrebbe terminare la sua esistenza prima che il lavoro sia stato eseguito dalla coda ? |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12859
|
Ma gli oggetti in C++ non vengono distrutti solo manualmente?
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
In ogni caso, se ho capito il problema, dovrebbe bastare un observer, alla distruzione dell'oggetto si invia un messaggio sull'observer, l'observer va richiamare un metodo del gestore della coda per ogni messaggio. Ovviamente servirebbe un id univoco per determinare la lista dei lavori in coda inseriti da quell'oggetto. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:12.




















