Understanding std:counting_semaphore and std:binary_semaphore from C++20
cppstories.com