Quelles sont les bonnes ressources pour apprendre la programmation taraudée?

voix
30

Avec la montée des processeurs multi-cœurs sur le bureau, les compétences multithreading deviendront un atout précieux pour les programmeurs. Pouvez-vous recommander quelques bonnes ressources (livres, tutoriels, sites Web, etc.) pour un programmeur qui cherche à apprendre la programmation sur les thread?

Créé 05/08/2008 à 16:42
source utilisateur
Dans d'autres langues...                            


17 réponses

voix
17

Jetez un oeil à Herb Sutter « The Free Lunch Is Over » et sa série d'articles sur efficace Concurrency .

Créé 05/08/2008 à 17:02
source utilisateur

voix
10

Joseph Albahari a écrit un bon aperçu de Threading en C # ici:

http://www.albahari.com/threading/

Créé 18/08/2008 à 22:51
source utilisateur

voix
6

Je l' ai lu honnêtement jamais moi - même, mais la programmation concurrente en Java est un livre que je l' ai entendu recommandé par plusieurs personnes.

Créé 05/08/2008 à 16:47
source utilisateur

Créé 27/08/2008 à 13:20
source utilisateur

voix
3

Je vous écris au sujet multithreading et en C ++ concurrency sur mon blog . J'écris aussi un livre sur C ++ en concurrency: C ++ Concurrency en action .

Créé 09/10/2008 à 13:56
source utilisateur

voix
2

Il est spécifique Delphi, mais aucune raison pour que le concept ne serait pas applicable à toute autre langue!

Multi Threading Tutoriel

Créé 01/10/2008 à 17:48
source utilisateur

voix
2

Je maintiens un lien favori pour les articles, blogs, accès concurrentiel et les projets à:

http://concurrency.tumblr.com

Je posterai généralement un lien ou deux par jour sur une variété de sujets (fils, acteurs, verrouillage, programmation parallèle) dans divers environnements (Erlang, Java, Scala, .NET, C ++, Ruby, Python, etc.).

Créé 22/09/2008 à 03:22
source utilisateur

voix
2

Je recommande un grand guide et de référence pour la programmation en C # concurrency (ou .NET en général) MSDN Ce que chaque Dev doit savoir sur multithread Apps article par Vance Morrison sur MSDN. Il contient beaucoup d'informations sur les meilleures pratiques et mises en garde sur le développement multithread

Créé 21/08/2008 à 13:06
source utilisateur

voix
2

Je l' ai lu ( la plupart) Programmation concurrente en Java par Brian Goetz, qui est très bon.

Il y a évidemment un thème basé sur Java qui traverse le livre (en utilisant des implémentations Java spécifiques de fils, serrures, etc.), mais à peu près tous les principes peuvent être appliqués à d'autres langues.

La page d'accueil de l'auteur contient une liste des articles qu'il a écrits, dont certaines comprennent filetage des choses connexes. Peut - être commencer et si vous aimez son style, acheter le livre.

Créé 21/08/2008 à 12:39
source utilisateur

voix
1

Les fabricants de CPU sites ont un contenu intéressant:

http://developer.amd.com/documentation/articles/Pages/default.aspx#parallel

http://software.intel.com/en-us/multi-core

Aussi la bibliothèque de threads opensource Intel a quelques bonnes références:

http://www.threadingbuildingblocks.org/

Créé 26/09/2008 à 13:21
source utilisateur

voix
1

Pour un traitement riche, complet du sujet, avec un bon équilibre entre l'informatique et la pratique, je recommande l'art de la programmation multiprocesseur . Beaucoup d'exemples sont dans le code orienté objet, à savoir Java, avec d' autres langues dispersées à travers. Cela dépend de la question étant couvert. Ce que j'aime vraiment ce livre est qu'il explique comment les algorithmes communs devraient être mis en œuvre dans une conception simultanée. Bien sûr, il y a tellement plus!

Pour les concepts généraux et un traitement de pthreads, j'aime vraiment programmation avec les threads POSIX . Être la bibliothèque et l' API qu'il est, il est en C.

Pour les développeurs Windows et C #, consultez le blog de Joe Duffy . Joe travaille sur les bibliothèques parallèles, les infrastructures et les modèles de programmation dans la Division Developer de Microsoft. Il a un livre à venir en novembre 2008 intitulé Programmation concurrente sur Windows ( lien Amazon ).

De plus, ne manquez pas le blog du Parrain: Herb Sutter Mill de Sutter . Il a des liens vers tous ses articles dans le Journal et plus de Dr. Dobb. Cliquez sur sa catégorie Concurrency .

Créé 10/09/2008 à 05:07
source utilisateur

voix
1

Si vous voulez avoir un aller à faire une version hautement parallèle d'une tâche simple, ou voir des solutions réelles, vous pourriez faire pire que de regarder le grand viseur projet. Fondamentalement , il est sur la façon de faire de la correspondance parallèle regex des fichiers journaux de manière efficace, mais en essayant d'ajouter moins de code possible.

Les participants ont présenté des solutions dans de nombreuses langues différentes et les résultats de performance sont affichées. Le projet initial a maintenant terminé et il est maintenant grand trouveur 2 prendre les travaux.

CodingHorror a une bonne introduction à large viseur .

Créé 27/08/2008 à 13:12
source utilisateur

voix
1

Je pense que Boost.Threads est une grande bibliothèque C ++ concurrency pour apprendre, surtout si vous voulez juste commencer par écrit les applications multithread. Le code est très succinct et facile à comprendre, plus la prochaine norme C de comprendra probablement une bibliothèque de threads basé sur Boost.Threads (tutoriel: http://www.ddj.com/cpp/184401518 )

Créé 21/08/2008 à 21:46
source utilisateur

voix
1

Je ne sais pas que vous recherchez, mais si vous faites le développement de WindowsForms le blog suivant est une lecture vaut chaque minute exactement ce que: WinForms Thread UI Invoque: Un examen approfondi de Invoke / BeginInvoke / InvokeRequred

Créé 21/08/2008 à 13:11
source utilisateur

voix
1

Le langage de programmation Erlang offre un style facile à utiliser la programmation concurrente. Vous pouvez utiliser jamais réellement Erlang, mais les concepts sont transportables à d' autres langues. Vous pouvez lire le livre de programmation Erlang: Logiciel pour une concurrente mondiale .

Les fans de la programmation fonctionnelle affirment qu'il n'y a pas besoin d'apprendre quelque chose de nouveau. Il suffit d'utiliser un langage fonctionnel pur, et le compilateur ou un interprète sera tout paralléliser automatiquement. Donc, vous voudrez peut-être apprendre Haskell, OCaml, ou une autre langue fonctionnelle.

Créé 13/08/2008 à 17:46
source utilisateur

voix
1

http://www.cilk.com/multicore-e-book/

C'est une belle vue d'ensemble de la sitution, si vous cherchez tuorials et des livres, il pourrait être préférable de spécifier une langue comme point de départ afin que vous puissiez mess avec un code.

Créé 05/08/2008 à 16:48
source utilisateur

voix
0

Si vous travaillez avec C #, le livre "C # 2008 et 2005 la programmation filetée", par Gaston C. Hillar - Packt Publishing - http://www.packtpub.com/beginners-guide-for-C-sharp-2008-and- 2005-programmation-thread / livre , vous aidera. Fortement recommandé pour les programmeurs C #, parce que vous pouvez télécharger le code avec des exemples drôles qui exploitent votre ordinateur multicœur. Le livre est un guide agréable avec beaucoup de code à la pratique. Il raconte des histoires alors qu'il explique les concepts les plus difficiles.

Créé 05/02/2009 à 03:40
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more