std::mutex::try_lock
De cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody> bool try_lock(); |
(depuis C++11) | |
Essaie de verrouiller le mutex. Retourne immédiatement. Le succès revient d'acquisition de verrouillage
true, sinon retourne false .Original:
Tries to lock the mutex. Returns immediately. On successful lock acquisition returns
true, otherwise returns false.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Paramètres
(Aucun)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Retourne la valeur
true si le verrou a été acquis avec succès, sinon false .Original:
true if the lock was acquired successfully, otherwise false.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Exceptions
| This section is incomplete |
Exemple
Cet exemple montre serrure, try_lock et déverrouiller en action
Original:
This example shows lock, try_lock and unlock in action
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
#include <iostream>
#include <mutex>
int main()
{
std::mutex test;
if (test.try_lock()==true)
std::cout << "lock acquired" << std::endl;
else
std::cout << "lock not acquired" << std::endl;
test.unlock(); //now unlock the mutex
test.lock(); //to lock it again
if (test.try_lock()) //true can be left out
std::cout << "lock acquired" << std::endl;
else
std::cout << "lock not acquired" << std::endl;
test.lock(); //and now the finale (a block)
}
Résultat :
lock acquired
lock not acquired
(program hangs)
Voir aussi
| verrouille le mutex, bloque si le mutex n'est pas disponible (fonction membre publique) | |
déverrouille le mutex Original: unlocks the mutex The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction membre publique) | |