Modernes C++ programmieren

Okt 23, 2024

lst-1046-godb.cpp

//#(compile) c++; compiler:g132; options:-O3 -std=c++23; libs:-
// https://godbolt.org/z/3Y5WP6qWM 
#include <iostream>
#include <atomic>

struct CArray { int a[100]; };
struct Einfach { int x, y; };

int main() {
    std::atomic<CArray> carray{};
    std::cout << (carray.is_lock_free() ? "sperrfrei" : "sperrt")
        << '\n';                                        // Ausgabe: sperrt
    std::atomic<Einfach> einfach{};
    std::cout << (einfach.is_lock_free() ? "sperrfrei" : "sperrt")
        << '\n';                                        // Ausgabe: sperrfrei
}