[Thread] Lancer la couche métier dans un thread dédié
Bonjour à tous,
Je développe une application dont la partie présentation est assurée par Swing. La couché métier est accessible via un Singleton appelé Middleware. Ce singleton possède des méthodes du type newProject, recordProject, simulate, etc... appelées par la couche Swing (par exemple en faisant Middleware.getInstance().newProject()).
J'ai bien compris les problématiques d'exécution dans les threads qui vont bien (thread EDT pour les "actions" graphiques et thread dédié pour les "actions" métier en tache de fond). Je me suis également penché du coté de SwingWorker dispo depuis java 6. Je trouve tous cela élégant dans le cadre de simples petits exemples.
Pour une application de taille supérieur, (à moins que je sois passé à coté d'un truc énorme) je trouve ces mécanismes assez lourd à gérer notamment par le fait de devoir créer des threads ou d'implémenter des SwingWorkers de manière systèmatique. Je me vois par exemple mal implémenté un SwingWorker par tâche de fond que j'ai à effectuer... surtout qu'ils doivent embarquer du code métier si je veux par exemple gérer des Progress Bar.
Je me posais donc la question de savoir s'il existait un moyen de faire exécuter automatiquement toutes les méthodes du Singleton Middleware dans un thread dédié (par exemple en le lanceant d'une manière spécifique) ?
Merci d'avance pour votre aide ;)