Question

Si vous ne savez pas ce qui est futex et linuxthreads-0,9, s'il vous plaît, ne répondez pas.

Puis-je mélanger dans un mutex à base de futex-programme avec mutex de LinuxThreads-0,8 ou -0,9 (qui a été utilisé dans tous les glibc <= 2.2 et dans toutes uClibc)?

J'ai besoin mutex interprocessus (pshared un, PTHREAD_PROCESS_SHARED).

Donc, si les discussions sont démarrés et gérés par linuxthreads pthread_manager, sera-t confondre par le sommeil à base futex et sillage?

Peut-on utiliser les mutex à base FUTEX, à la fois pour inter-processus et de synchronisation inter-thread?

Était-ce utile?

La solution

Je ne vois pas pourquoi vous ne pouviez pas.

Vous ne pourrez pas utiliser pthreads, évidemment. Vous utiliserez probablement la bibliothèque pthread avec les anciens mutex et vous aurez besoin d'avoir le code futex dans une autre bibliothèque.

Vous pouvez évidemment pas verrouiller un mutex linuxthreads et déverrouiller avec une fonction de futex, cela ne marchera jamais.

Mais si un thread est bloqué dans le noyau en attente sur un futex, je ne vois pas comment il est différent que d'être bloqué sur une opération d'E / S disque et gère assez bien que linuxthreads.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top