• [^] # Re: Autres applis et pthreads

    Posté par . En réponse à la dépêche performances MySQL sous OpenBSD. Évalué à 10.

    L'appel système clone() de Linux peut créer aussi bien des processus lourds (équivalent du fork()) ou des LWP (Light-Weight Processes) suivant les options. Les threads sont implémentés via clone(), et chaque thread est donc un LWP différent. Il s'agit de processus différents partageant le même espace d'adressage.

    Il n'y aucune lourdeur là-dedans, et on bénéficie de la puissance de l'ordonanceur du noyau "gratuitement". Le seul unique problème est qu'un processus créant 10 LWP aura potentiellement accès au CPU 10x plus souvent qu'un processus de même priorité et ne créant aucun LWP, mais on peut toujours contourner ça via nice().