/portable_concurrency

C++ Extensions for Concurrency, ISO/IEC TS 19571:2016 portable implementation

Primary LanguageC++

portable_concurrency

Build Status Build status

Attempt to write portable implementation of the C++ Extensions for Concurrency, ISO/IEC TS 19571:2016

  • All of the classes required by TS namespace std::experimental::concurrency_v1 resides in the namespace experimental::concurrency_v1.
  • The only public dependency: standard library.
  • The only build dependency: gtest

Build

conan install --build=missing
mkdir -p build/debug
cd build/debug
cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug ../..
ninja
ninja test

TODO

  • shared_future continuation
  • when_any implementation
  • when_all implementation
  • implicit unwrap for continuations
  • make_ready_at_thread_exit for promise and packaged_task
  • allocator support where required by the standard