├── .gitignore ├── .travis.yml ├── CMakeLists.txt ├── LICENSE ├── README.md ├── appveyor.yml ├── include ├── alternate_mutex.hpp ├── alternate_shared_mutex.hpp ├── apple_native_mutex.hpp ├── checked_mutex.hpp ├── checked_shared_mutex.hpp ├── fair_mutex.hpp ├── fair_shared_mutex.hpp ├── gcd_semaphore.hpp ├── naive_spin_mutex.hpp ├── posix_native_mutex.hpp ├── posix_semaphore.hpp ├── ttas_spin_mutex.hpp ├── win_native_mutex.hpp ├── win_semaphore.hpp ├── yamc_backoff_spin.hpp ├── yamc_barrier.hpp ├── yamc_latch.hpp ├── yamc_lock_validator.hpp ├── yamc_rwlock_sched.hpp ├── yamc_scoped_lock.hpp ├── yamc_semaphore.hpp └── yamc_shared_lock.hpp └── tests ├── CMakeLists.txt ├── barrier_test.cpp ├── basic_test.cpp ├── checked_test.cpp ├── compile_test.cpp ├── deadlock_test.cpp ├── dump_typeinfo.cpp ├── fairness_test.cpp ├── latch_test.cpp ├── lock_test.cpp ├── perf_rwlock.cpp ├── perf_rwlock.sh ├── rwlock_test.cpp ├── semaphore_test.cpp ├── spinlock_test.cpp └── yamc_testutil.hpp /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/.travis.yml -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/README.md -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/appveyor.yml -------------------------------------------------------------------------------- /include/alternate_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/alternate_mutex.hpp -------------------------------------------------------------------------------- /include/alternate_shared_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/alternate_shared_mutex.hpp -------------------------------------------------------------------------------- /include/apple_native_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/apple_native_mutex.hpp -------------------------------------------------------------------------------- /include/checked_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/checked_mutex.hpp -------------------------------------------------------------------------------- /include/checked_shared_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/checked_shared_mutex.hpp -------------------------------------------------------------------------------- /include/fair_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/fair_mutex.hpp -------------------------------------------------------------------------------- /include/fair_shared_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/fair_shared_mutex.hpp -------------------------------------------------------------------------------- /include/gcd_semaphore.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/gcd_semaphore.hpp -------------------------------------------------------------------------------- /include/naive_spin_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/naive_spin_mutex.hpp -------------------------------------------------------------------------------- /include/posix_native_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/posix_native_mutex.hpp -------------------------------------------------------------------------------- /include/posix_semaphore.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/posix_semaphore.hpp -------------------------------------------------------------------------------- /include/ttas_spin_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/ttas_spin_mutex.hpp -------------------------------------------------------------------------------- /include/win_native_mutex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/win_native_mutex.hpp -------------------------------------------------------------------------------- /include/win_semaphore.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/win_semaphore.hpp -------------------------------------------------------------------------------- /include/yamc_backoff_spin.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_backoff_spin.hpp -------------------------------------------------------------------------------- /include/yamc_barrier.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_barrier.hpp -------------------------------------------------------------------------------- /include/yamc_latch.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_latch.hpp -------------------------------------------------------------------------------- /include/yamc_lock_validator.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_lock_validator.hpp -------------------------------------------------------------------------------- /include/yamc_rwlock_sched.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_rwlock_sched.hpp -------------------------------------------------------------------------------- /include/yamc_scoped_lock.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_scoped_lock.hpp -------------------------------------------------------------------------------- /include/yamc_semaphore.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_semaphore.hpp -------------------------------------------------------------------------------- /include/yamc_shared_lock.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/include/yamc_shared_lock.hpp -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/barrier_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/barrier_test.cpp -------------------------------------------------------------------------------- /tests/basic_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/basic_test.cpp -------------------------------------------------------------------------------- /tests/checked_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/checked_test.cpp -------------------------------------------------------------------------------- /tests/compile_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/compile_test.cpp -------------------------------------------------------------------------------- /tests/deadlock_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/deadlock_test.cpp -------------------------------------------------------------------------------- /tests/dump_typeinfo.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/dump_typeinfo.cpp -------------------------------------------------------------------------------- /tests/fairness_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/fairness_test.cpp -------------------------------------------------------------------------------- /tests/latch_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/latch_test.cpp -------------------------------------------------------------------------------- /tests/lock_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/lock_test.cpp -------------------------------------------------------------------------------- /tests/perf_rwlock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/perf_rwlock.cpp -------------------------------------------------------------------------------- /tests/perf_rwlock.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/perf_rwlock.sh -------------------------------------------------------------------------------- /tests/rwlock_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/rwlock_test.cpp -------------------------------------------------------------------------------- /tests/semaphore_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/semaphore_test.cpp -------------------------------------------------------------------------------- /tests/spinlock_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/spinlock_test.cpp -------------------------------------------------------------------------------- /tests/yamc_testutil.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yohhoy/yamc/HEAD/tests/yamc_testutil.hpp --------------------------------------------------------------------------------