Faraday: #get n'est pas thread-safe

Créé le 26 oct. 2019  ·  4Commentaires  ·  Source: lostisland/faraday

https://github.com/lostisland/faraday/blob/d5eaa4ffe04b1cba00691b1cc2b2541e91093bf1/lib/faraday/adapter_registry.rb#L14 -L26

La lecture à partir d'une table de hachage pendant qu'il y a des mises à jour n'est pas thread-safe.

bug

Tous les 4 commentaires

Ah je vois ce que tu veux dire, devrions-nous plutôt déplacer l'appel @lock.synchronise dans get ?
Je ne suis pas sûr que nous en aurions besoin dans set après ça ?

Vous en avez besoin dans les deux méthodes car vous lisez et écrivez dans @constants . Vous ne pouvez pas avoir un accès synchronisé à la même table de hachage dans aucune situation. Les opérations de lecture seule ne sont pas sûres avec des écritures simultanées.

D'accord, j'ai fusionné une modification pour envelopper le @constants dans une synchronisation.

Merci @ioquatix pour l'inspiration !

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

jordansissel picture jordansissel  ·  5Commentaires

olleolleolle picture olleolleolle  ·  5Commentaires

subvertallchris picture subvertallchris  ·  5Commentaires

luizkowalski picture luizkowalski  ·  3Commentaires

QuinnWilton picture QuinnWilton  ·  4Commentaires