Domanda

Se non si sa cosa è futex e linuxthreads-0.9, per favore, non rispondere.

Posso mescolare in un programma mutex futex-based con mutex da linuxthreads-0.8 o -0.9 (che è stato utilizzato in tutte le glibc <= 2.2 e in tutto uClibc)?

Ho bisogno mutex tra processi (pshared uno, PTHREAD_PROCESS_SHARED).

Quindi, se le discussioni sono avviati e gestiti da linuxthreads pthread_manager, sarà essere confuso dal sonno futex-based e veglia?

Posso usare mutex futex-based sia per inter-process e la sincronizzazione inter-thread?

È stato utile?

Soluzione

Non vedo il motivo per cui non si poteva.

Non sarà in grado di utilizzare pthreads, ovviamente. Si dovrà probabilmente utilizzare la libreria pthread con i vecchi mutex e sarà necessario avere il codice futex in qualche altra libreria.

Si può ovviamente non bloccare un mutex linuxthreads e sbloccarlo con una funzione futex, che non avrebbe mai funzionato.

Ma se un thread è bloccato nel kernel in attesa su un futex, non vedo come è diverso che essere bloccato un'operazione di disco I / O, e gestisce linuxthreads che abbastanza bene.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top