Comment synchroniser l'action de plusieurs threads et assurez-vous qu'un seul thread peut accéder à la ressource à un instant donné dans EhCache
.Comment synchroniser l'action de plusieurs threads dans EhCache?
0
A
Répondre
1
Je ne suis pas sûr de comprendre votre question, mais supposons. EhCache (3, je ne sais pas environ 2) est entièrement thread-safe.
Cependant, si vous voulez vraiment dire qu'une seule entrée peut être utilisée par un seul thread à la fois, ce n'est pas ce que fera EhCache car c'est un besoin spécifique. Vous devez mettre votre propre synchronisation en plus. Utiliser un verrou ou un sémaphore. Par exemple, vous pouvez verrouiller la valeur récupérée.
0
Je crois que cette question est proche de l'une des vôtres et que le cache-through pourrait vous aider.
Ma question était quand nous commençons à deux ou plusieurs threads dans un programme, il peut y avoir une situation où plusieurs threads tentent d'accéder à la même ressource stockée dans ehcache et enfin ils peuvent produire résultat imprévu dû à la concurrence problèmes. Donc, pour éviter cela, je dois écrire mon propre code de synchronisation. – Sibani
Ils peuvent récupérer l'entrée sans aucun problème. Mais bien sûr, s'ils commencent à modifier l'entrée, vous avez en effet besoin de synchronisation. Ehcache ne peut rien faire pour vous là-bas. – Henri
J'ai ajouté mon propre code de synchronisation ... mais j'ai fait face au problème suivant- https://stackoverflow.com/questions/45834377/can-same-ehcache-object-of-same-cache-manager-be-used-by multi-threads – Sibani