From 326bc10b2d0b50cf2dce70bf655206c2f8811b7b Mon Sep 17 00:00:00 2001 From: mutouyun Date: Sun, 13 Sep 2020 15:06:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96ut=EF=BC=8C=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?tls=E4=B8=AD=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 3rdparty/capo/make.hpp | 22 ++ 3rdparty/capo/noncopyable.hpp | 25 ++ 3rdparty/capo/scope_guard.hpp | 103 +++++ 3rdparty/capo/type_name.hpp | 320 ++++++++++++++++ 3rdparty/capo/unused.hpp | 23 ++ demo/chat/CMakeLists.txt | 3 - include/ipc.h | 42 ++- include/rw_lock.h | 4 +- include/tls_pointer.h | 95 +++-- src/CMakeLists.txt | 12 +- src/concept.h | 4 +- src/ipc.cpp | 40 +- src/memory/wrapper.h | 54 +-- src/platform/detail.h | 54 +-- src/platform/tls_pointer_linux.cpp | 29 -- src/platform/tls_pointer_linux.h | 82 ++++ src/platform/tls_pointer_win.cpp | 192 +--------- src/platform/tls_pointer_win.h | 76 ++++ src/prod_cons.h | 12 +- src/queue.h | 15 +- src/tls_pointer.cpp | 9 + src/utility.h | 56 +++ test/CMakeLists.txt | 6 +- test/test.h | 161 +++----- test/test_circ.cpp | 385 ------------------- test/test_ipc.cpp | 578 +++++++---------------------- test/test_mem.cpp | 173 ++++----- test/test_queue.cpp | 181 +++++++++ test/test_shm.cpp | 85 +++-- test/test_thread_utility.cpp | 202 ++++++++++ test/thread_pool.h | 119 ++++++ 31 files changed, 1710 insertions(+), 1452 deletions(-) create mode 100755 3rdparty/capo/make.hpp create mode 100755 3rdparty/capo/noncopyable.hpp create mode 100755 3rdparty/capo/scope_guard.hpp create mode 100755 3rdparty/capo/type_name.hpp create mode 100755 3rdparty/capo/unused.hpp mode change 100644 => 100755 demo/chat/CMakeLists.txt mode change 100644 => 100755 include/ipc.h mode change 100644 => 100755 include/rw_lock.h mode change 100644 => 100755 src/CMakeLists.txt mode change 100644 => 100755 src/concept.h mode change 100644 => 100755 src/ipc.cpp delete mode 100644 src/platform/tls_pointer_linux.cpp create mode 100755 src/platform/tls_pointer_linux.h mode change 100644 => 100755 src/platform/tls_pointer_win.cpp create mode 100755 src/platform/tls_pointer_win.h mode change 100644 => 100755 src/prod_cons.h mode change 100644 => 100755 src/queue.h create mode 100755 src/tls_pointer.cpp create mode 100755 src/utility.h mode change 100644 => 100755 test/CMakeLists.txt delete mode 100755 test/test_circ.cpp create mode 100755 test/test_queue.cpp create mode 100755 test/test_thread_utility.cpp create mode 100755 test/thread_pool.h diff --git a/3rdparty/capo/make.hpp b/3rdparty/capo/make.hpp new file mode 100755 index 0000000..908849c --- /dev/null +++ b/3rdparty/capo/make.hpp @@ -0,0 +1,22 @@ +/* + The Capo Library + Code covered by the MIT License + Author: mutouyun (http://orzz.org) +*/ + +#pragma once + +#include // std::decay +#include // std::forward + +namespace capo +{ + template