Ho appena iniziato a esaminare la classe Executors
di Java e il metodo newCachedThreadPool()
. In base all'API, il pool di thread risultante riutilizza gli oggetti esistenti Thread
per le nuove attività.In che modo un pool di thread memorizzato nella cache riutilizza i thread esistenti
Sono un po 'perplesso su come è stato implementato perché non sono riuscito a trovare alcun metodo nell'API Thread
che consente di impostare il comportamento di un oggetto esistente Thread
.
Ad esempio, è possibile creare una nuova Thread
da un oggetto Runnable
, il che rende la chiamata di Thread
run()
metodo s' il Runnable
. Tuttavia, non esiste un metodo setter nell'API Thread
che utilizza un argomento come Runnable
.
Apprezzerei qualsiasi suggerimento.
La risposta IOW: un 'Thread' svolge quasi lo stesso compito (o dovrei dire sottoinsieme di compiti) come la combinazione di' Runnable' e 'ExecutorService' con l'eccezione che quest'ultima combo ti offre più funzionalità per avvantaggiarti di. Tanto che dovresti * davvero * considerare perché stai usando un 'Thread' solo se lo fai. – BAR