std::atomic_ref<T>:: is_lock_free
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| 
               
                
                 
                  
                   atomic_ref::is_lock_free
                  
                 
                
                
               | 
            ||||
| 
               
                
                 
                  
                   (C++26)
                  
                 
                
                
               | 
            ||||
| 
              
               Operations for arithmetic types
                (except 
                bool
               
               and pointer-to-object)
              
              | 
            ||||
| 
              
               Operations for integral types
                (except 
                bool
               
               and pointer-to-object)
              
              | 
            ||||
| 
               
                
                 
                  
                   (C++26)
                  
                 
                
                
               | 
            ||||
| 
               
                
                 
                  
                   (C++26)
                  
                 
                
                
               | 
            ||||
| 
              
               Operations for integral types
                (except 
                bool
               
               )
              
              | 
            ||||
| Constants | ||||
| 
           
           
            
             bool
            
            is_lock_free
            
             (
            
            
             )
            
            
             const
            
            
             noexcept
            
            
             ;
            
           
           
          | 
         (depuis C++20) | |
Vérifie si les opérations atomiques sur cet objet sont sans verrouillage.
         Table des matières | 
       
Paramètres
(aucun)
Valeur de retour
true si les opérations atomiques sur cet objet sont sans verrou, false sinon.
Notes
Tous les types atomiques à l'exception de std::atomic_flag peuvent être implémentés en utilisant des mutex ou d'autres opérations de verrouillage, plutôt qu'en utilisant les instructions atomiques sans verrou du CPU. Il est également permis que les types atomiques soient parfois sans verrou, par exemple si seuls les accès mémoire alignés sont naturellement atomiques sur une architecture donnée, les objets non alignés du même type doivent utiliser des verrous.
La norme C++ recommande (mais n'exige pas) que les opérations atomiques sans verrouillage soient également sans adresse, c'est-à-dire adaptées à la communication entre processus utilisant la mémoire partagée.
Exemple
| 
         Cette section est incomplète
          Raison : aucun exemple  | 
       
Voir aussi
| 
          
           
            
             
              [static]
             
            
           
           
          | 
        
         indique que le type est toujours sans verrou
          (constante de membre statique publique)  |