Est-ce que Android prend en charge les mutex partagés par processus et les variables de condition? J'ai entendu dire que l'implémentation de bionic ne les supporte pas parce qu'Android a d'autres moyens d'IPC, mais ne trouve pas d'informations qui le confirmeraient ou le nieraient.Mutex partagés par processus et variables conditionnelles sous Android
Les sources sont un peu déroutantes. Dans le pthread_mutex.cpp de bionique juste avant pthread_mutexattr_setpshared il y a un commentaire:
/* process-shared mutexes are not supported at the moment */
Mais à l'intérieur de la fonction, il est aussi écrit:
/* our current implementation of pthread actually supports shared
* mutexes but won't cleanup if a process dies with the mutex held.
* Nevertheless, it's better than nothing. Shared mutexes are used
* by surfaceflinger and audioflinger.
*/
Ainsi Quelqu'un at-il utilisé mutex de processus partagés (et cond vars) dans les applications android natives (en les partageant avec ashmem_create_region, par exemple)?