Video: Perché Pthread_cond_wait ha bisogno di un mutex?
2024 Autore: Lynn Donovan | [email protected]. Ultima modifica: 2023-12-15 23:49
Il mutex viene utilizzato per proteggere la variabile di condizione stessa. Ecco perché tu bisogno si è bloccato prima di te fare un'attesa. Quindi, quando la variabile di condizione viene segnalata o trasmessa a, uno o più thread in lista d'attesa verranno svegliati e il mutex sarà magicamente bloccato di nuovo per quel thread.
A questo proposito, Pthread_cond_wait sblocca il mutex?
Il pthread_cond_wait () la funzione blocca il thread chiamante sulla variabile di condizione cond, e sblocca gli associati mutex mutex . Il thread chiamante deve essere bloccato mutex prima di attendere la variabile di condizione. Al ritorno dalla funzione, il mutex è di nuovo bloccato e di proprietà del thread chiamante.
Successivamente, la domanda è: perché è necessario il mutex? Garantisce che solo un thread alla volta esegua un pezzo di codice chiave, il che a sua volta limita l'accesso a una struttura di dati. Assicura che entrambi i thread abbiano una visione completa e corretta di quella memoria indipendentemente da qualsiasi riordino della CPU. Il mutex è una necessità assoluta quando si esegue la programmazione simultanea.
Oltre a sopra, perché le variabili di condizione hanno bisogno del mutex?
Il mutex è usato per proteggere il variabile di condizione si. Ecco perché tu bisogno si è bloccato prima di te fare un'attesa. Poi quando il la variabile di condizione è segnalato o trasmesso a, uno o più thread in lista d'attesa volere essere svegliato e il mutex essere magicamente bloccato di nuovo per quel thread.
Perché abbiamo bisogno delle variabili di condizione?
Variabili di condizione lascia che una serie di thread dorma fino al solletico! Puoi solleticare un thread o tutti i thread che stanno dormendo. Se riattivi solo un thread, il sistema operativo deciderà quale thread riattivare.
Consigliato:
Perché abbiamo bisogno di un indirizzo logico e fisico?
La necessità dell'indirizzo logico è gestire in modo sicuro la nostra memoria fisica. L'indirizzo logico viene utilizzato come riferimento per accedere alla posizione di memoria fisica. L'associazione di istruzioni e dati di un processo alla memoria viene eseguita al momento della compilazione, del caricamento o dell'esecuzione
Perché abbiamo bisogno della sessione in PHP?
Le sessioni sono un modo semplice per archiviare i dati per i singoli utenti rispetto a un ID di sessione univoco. Questo può essere usato per mantenere le informazioni sullo stato tra le richieste di pagina. Gli ID di sessione vengono normalmente inviati al browser tramite cookie di sessione e l'ID viene utilizzato per recuperare i dati di sessione esistenti
Perché un computer ha bisogno dell'archiviazione dei dati?
Archiviazione del computer. Il tuo computer ha bisogno di spazio di archiviazione perché il processore ha bisogno di un posto dove eseguire la sua magia: un blocco per appunti per scarabocchi folli, se vuoi. Archiviazione temporanea: fornita come memoria o RAM. La memoria è il luogo in cui il processore svolge il proprio lavoro, dove vengono eseguiti i programmi e dove vengono archiviate le informazioni durante l'elaborazione
Perché abbiamo bisogno del validatore in CSS?
Validatore CSS: Questo validatore verifica la validità CSS dei documenti web in HTML, XHTML ecc. Un vantaggio di HTML Tidy è l'utilizzo di un'estensione che consente di controllare le tue pagine direttamente nel browser senza dover visitare uno dei siti di validazione
Perché abbiamo bisogno di TCP e UDP?
Sia TCP che UDP sono protocolli utilizzati per l'invio di bit di dati, noti come pacchetti, su Internet. Entrambi si basano sul protocollo Internet. In altre parole, se stai inviando un pacchetto tramite TCP o UDP, quel pacchetto viene inviato a un indirizzo IP