-
JNA et multi thread
Bonjour,
J'utilise une DLL que j'appelle depuis Java grâce à JNA et j'ai mis les méthodes en "synchronised" pour qu'il n'y ait pas de problème de synchronisation.
Comme je souhaiterais optimiser mon application je voudrais pouvoir appeler les méthodes de la DLL depuis plusieurs Thread en même temps. En enlevant "synchronised" mon appli plante, y a-t-il des paramètres à mettre pour cela afin d'autoriser plusieurs appels simultanés ?
Merci !
-
Les appels simultanés sont parfaitement autorisés.
S'ils font planter ton appli, c'est que le code de la DLL, ou bien le JNA qui lie la DLL à Java, ne sait pas gérer plusieurs appels à la fois.
Dans ce cas-là, pas de formule magique, il faut soit le refaire pour qu'il accepte plusieurs threads, soit renoncer à avoir plusieurs threads en même temps.
-
Justement la DLL ne supporte pas des appels simultanés... Il n'est pas possible de demander à JNA de charger une nouvelle fois la DLL à chaque appel ?