C++ Threads


#include <thread>
#include <mutex>
#include <atomic>

std::thread    t(thread_function);

std::thread::hardware_concurrency()
std::thread::get_id()
std::this_thread::get_id();

t.join();
t.detach();
t.joinable();
t.get_id();

static std::mutex               m;
std::lock_guard<std::mutex>     guard(m);
std::unique_lock<std::mutex>    l(m);
std::atomic<int>                result(0);
std::condition_variable         condvar;

m.lock();
m.unlock();
condvar.wait(...);
condvar.notify_one();

  • Function Pointer
  • Function Objects
  • Lambda functions

C++11 multithreading tutorial
C++11 multithreading tutorial – part 2
C++11 Multithreading – Part 1 : Three Different ways to Create Threads
C++11/C++14 Thread 1. Creating Threads

Posts about C++11 Concurrency Tutorial
C++11 Concurrency – Part 1 : Start Threads
C++11 Concurrency Tutorial – Part 2 : Protect shared data
C++11 Concurrency Tutorial – Part 3: Advanced locking and condition variables

Leave a Reply

Your email address will not be published. Required fields are marked *