Mon script Jython appelle du code que j'écris en Java (parce que je suis plus à l'aise avec le multithreading Java). Maintenant, il s'avère que j'ai besoin d'appeler l'une des méthodes Jython de Java (sinon je devrais le réécrire en Java). Il est facile de piloter Java à partir de Jython, et il est aussi simple de configurer Java comme maître et Jython comme esclave, mais ce n'est pas aussi évident de savoir comment l'installer. L'un et l'autre.Appelez Jython depuis Java (le script Jython appelle Java, qui doit ensuite rappeler Jython)
La documentation officielle contient un très long article sur tout cela: Chapter 10: Jython and Java Integration, ce qui rend la tâche difficile à première vue: des usines d'objets personnalisés, des usines à couplage lâche et beaucoup de code pour le faire fonctionner .
Il existe d'autres sources que j'ai trouvé qui vont aussi dans beaucoup de détails, mais ni offre des solutions simples:
Comme il est un interpréteur Jython déjà en cours d'exécution, il devrait y avoir un moyen simple d'appeler une méthode, sans avoir à instancier une nouvelle interp rete (comme dans le dernier lien ci-dessus, et comme vous auriez besoin de le faire si Java conduisait Jython). Existe-t-il réellement un tel moyen?
En fait, Jython est encore meilleur avec le multithreading qu'avec CPython https://www.jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited Donc, je suppose que l'interprétation se passe sur chaque thread séparément, et les seules choses qui restent à s'inquiéter sont les aspects habituels de la programmation multithread. Aussi: http://www.jython.org/jythonbook/en/1.0/Concurrency.html qui dit aussi que 'list',' dict' et 'set' sont déjà synchronisés. Donc, une chose de moins à s'inquiéter! –