Comment Keep-alive travailler avec ThreadPoolExecutor?

Dans le prolongement d'une question posté par moi, je suis en train d'utiliser ThreadPoolExecutor dans ma base de code. Même après plusieurs tentatives pour comprendre à partir de l'API Java doc, je n'ai pas réussi à comprendre clairement la fonctionnalité/le but derrière keepAliveTime des paramètres passés au constructeur. Espérons que quelqu'un peut m'expliquer avec quelques bon exemple.

Extraits de Java doc:

public ThreadPoolExecutor(int corePoolSize,
                          int maximumPoolSize,
                          long keepAliveTime,
                          TimeUnit unit,
                          BlockingQueue<Runnable> workQueue)

keepAliveTime - lorsque le nombre de threads est plus grande que le noyau, c'est le temps maximum que l'excès de threads inactifs va attendre pour les nouvelles tâches avant de s'arrêter.

  • Tout comme un point de terminologie, vous avez utilisé deux fois le mot "œuvre" quand je pense que vous venez de dire "utiliser". Vous n'êtes pas d'essayer de mettre en œuvre ThreadPoolExecutor en écrivant votre propre code de mise en œuvre de l'API - vous êtes tout simplement la création d'un ThreadPoolExecutor et vous voulez savoir comment il va se comporter, non?
  • Oui, vous avez raison. J'ai juste utilisé pour signifier que c'est un nouveau type de mise en œuvre dans ma base de code.
  • Mais ce n'est pas une mise en œuvre de ThreadPoolExecutor. Il est vraiment utile si vous pouvez utiliser la terminologie appropriée en particulier sur un Débordement de Pile.
  • OK bien sûr. Merci pour la correction de moi.
InformationsquelleAutor Gnanam | 2012-04-30