{"id":14181,"date":"2023-07-20T15:57:01","date_gmt":"2023-07-20T15:57:01","guid":{"rendered":"https:\/\/blog.bachi.net\/?p=14181"},"modified":"2023-07-20T15:57:01","modified_gmt":"2023-07-20T15:57:01","slug":"c-thread-mutex-condition_variable","status":"publish","type":"post","link":"https:\/\/blog.bachi.net\/?p=14181","title":{"rendered":"C++ thread, mutex, condition_variable"},"content":{"rendered":"<p><a href=\"https:\/\/en.cppreference.com\/w\/cpp\/thread\/thread\">std::thread<\/a><br \/>\n<a href=\"https:\/\/en.cppreference.com\/w\/cpp\/thread\/mutex\">std::mutex<\/a><br \/>\n<a href=\"https:\/\/en.cppreference.com\/w\/cpp\/thread\/condition_variable\">std::condition_variable<\/a><\/p>\n<h3>modernescpp, Rainer Grimm<\/h3>\n<p><a href=\"https:\/\/www.modernescpp.com\/index.php\/condition-variables\">Condition Variables<\/a><\/p>\n<h3>RIP Tutorial<\/h3>\n<p><a href=\"https:\/\/riptutorial.com\/cplusplus\/example\/13552\/using-condition-variables\">Using Condition Variables<\/a><\/p>\n<h3>Medium<\/h3>\n<p><a href=\"https:\/\/medium.com\/@simontoth\/daily-bit-e-of-c-std-condition-variable-e506b3eadbea\">Daily bit(e) of C++ | std::condition_variable<\/a><\/p>\n<h3>Thomas Trapp<\/h3>\n<p><a href=\"https:\/\/thomastrapp.com\/posts\/signal-handlers-for-multithreaded-c++\/\">Signal Handlers for Multithreaded C++<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>std::thread std::mutex std::condition_variable modernescpp, Rainer Grimm Condition Variables RIP Tutorial Using Condition Variables Medium Daily bit(e) of C++ | std::condition_variable Thomas Trapp Signal Handlers for Multithreaded C++<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-14181","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/posts\/14181","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=14181"}],"version-history":[{"count":1,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/posts\/14181\/revisions"}],"predecessor-version":[{"id":14182,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=\/wp\/v2\/posts\/14181\/revisions\/14182"}],"wp:attachment":[{"href":"https:\/\/blog.bachi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=14181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.bachi.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}