2010-09-04 4 views
4

Est-ce que quelqu'un connaît une référence décente pour les problèmes de synchronisation en C++? Je pense à quelque chose de similaire à la FAQ C++ (et à la FQA Lite) mais en ce qui concerne la concurrence, le verrouillage, le threading, les problèmes de performance, les directives, quand les verrous sont nécessaires et quand ils ne le sont pas, le code de bibliothèque multithread vous ne pouvez pas contrôler, etc. Je ne me soucie pas des problèmes internes de la façon dont les différents types de verrous peuvent être implémentés, etc., j'utilise simplement boost pour ça. Je suis sûr qu'il y a beaucoup de bons livres là-bas, je préférerais quelque chose (de préférence en ligne) que je peux utiliser comme un goto pour quand une question ou un problème apparaît dans mon esprit. Je ne suis pas vraiment un débutant à tout cela, donc j'aimerais avoir une référence concise pour tous ces différents types de situations qui peuvent apparaître lors de l'écriture de bibliothèques multithread qui utilisent d'autres bibliothèques multithread.Instructions de synchronisation C++

Comme:

  • Quand est-il préférable d'avoir une grande serrure protéger un tas de données contre un tas de petits verrous protégeant chaque élément de données? Quel est l'impact sur les performances de pousser quelque chose dans une file d'attente et de faire apparaître un autre thread dans la file d'attente ou de traiter ces données dans la file d'attente? le fil d'origine?

  • Existe-t-il des expressions idiomatiques simples pour s'assurer que les choses fonctionnent juste quand vous n'êtes pas si préoccupé par la performance?

De toute façon, je veux juste savoir s'il existe des références décentes que les gens utilisent.

Répondre