Je n'ai pas compris la question posée....
J'ai apprécié le livre de David Butenhof
Programming With Posix Threads [
www.amazon.fr] mais il y a aussi celui de B.Nichols [
www.oreilly.com]
Concernant la programmation multi-thread, elle est difficile à mettre en oeuvre, sauf si on se restreint à peu de threads de nature différente... mais j'ai peu codé en multi-thread.
Sous Linux et sous Unix en général, les communications entre processus (notamment pipes, sockets...) marchent vite et bien, et une alternative possible est de développer son application entre plusieurs processus.... De plus, des processus communiquants par échanges de messages peuvent être éventuellement répartis entre plusieurs machines... Et la définition d'un protocole de communication architecture une application en définissant clairement le rôle des développeurs.
Une possibilité est d'avoir un thread ou processus maitre qui sert de moniteur aux autres....
Il y a aussi PVM, MPI, ....
Quelle genre d'application développez vous? Pourquoi avez vous besoin de parallélisme? La grosse difficulté (aussi bien en pthread qu'en multi-processus) c'est l'asychronie, et conséquemment le caractère non reproductible des bogues!
Le style de programmation fonctionnel (comme dans Ocaml ou Haskell) permet aussi d'utiliser des valeurs fonctionnelles d'ordre supérieur, qui organisent agréablement le contrôle (voir aussi le Continuation Passing Style).
----
Basile STARYNKEVITCH
Membre de l'
APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!
Projet logiciel libre:
RefPerSys
Poste le Tuesday 18 April 2006 23:14:15