J'ai reçu une bibliothèque d'un développeur externe sous la forme d'une API bien définie (en C++ et Java). Quels peuvent être quelques tests pour vérifier si la bibliothèque est thread-safe?Méthodes génériques pour vérifier si une bibliothèque/API est sûre pour les threads
3
A
Répondre
3
Fondamentalement, vous ne pouvez pas, il est plus ou moins impossible de tester la sécurité des threads. Et aussi, si vous n'avez pas la garantie de l'auteur que la bibliothèque est thread-safe, alors ils ne vont pas résoudre les problèmes de threading, donc les futures versions pourraient être moins sûres pour les threads. Si vous avez le code source, vous pouvez étudier les problèmes courants de sécurité des threads: état partagé, verrous, etc. Mais si vous avez seulement des binaires, alors le mieux que vous pouvez espérer est de montrer que la bibliothèque n'est pas thread-safe. Même alors, reproduire les problèmes de manière fiable peut être extrêmement difficile.