Replaced `THREAD_LOCAL` with `thread_local` in libprocess. Review: https://reviews.apache.org/r/58312
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/305c5462 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/305c5462 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/305c5462 Branch: refs/heads/master Commit: 305c5462b73600454d8bcfa4535e8b69b0d255a9 Parents: 242f58b Author: Neil Conway <[email protected]> Authored: Mon Apr 10 09:44:42 2017 -0700 Committer: Neil Conway <[email protected]> Committed: Wed May 3 14:19:37 2017 -0700 ---------------------------------------------------------------------- 3rdparty/libprocess/include/process/executor.hpp | 4 +--- 3rdparty/libprocess/include/process/process.hpp | 3 +-- 3rdparty/libprocess/src/libev.cpp | 3 +-- 3rdparty/libprocess/src/libev.hpp | 3 +-- 3rdparty/libprocess/src/libevent.cpp | 3 +-- 3rdparty/libprocess/src/libevent.hpp | 3 +-- 3rdparty/libprocess/src/process.cpp | 9 ++++----- 7 files changed, 10 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/include/process/executor.hpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/include/process/executor.hpp b/3rdparty/libprocess/include/process/executor.hpp index 7faa2ab..cd2f2f0 100644 --- a/3rdparty/libprocess/include/process/executor.hpp +++ b/3rdparty/libprocess/include/process/executor.hpp @@ -17,8 +17,6 @@ #include <process/id.hpp> #include <process/process.hpp> -#include <stout/thread_local.hpp> - namespace process { // Provides an abstraction that can take a standard function object @@ -67,7 +65,7 @@ private: // Per thread executor pointer. We use a pointer to lazily construct the // actual executor. -extern THREAD_LOCAL Executor* _executor_; +extern thread_local Executor* _executor_; #define __executor__ \ (_executor_ == nullptr ? _executor_ = new Executor() : _executor_) http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/include/process/process.hpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/include/process/process.hpp b/3rdparty/libprocess/include/process/process.hpp index 401510c..944fcc6 100644 --- a/3rdparty/libprocess/include/process/process.hpp +++ b/3rdparty/libprocess/include/process/process.hpp @@ -35,7 +35,6 @@ #include <stout/lambda.hpp> #include <stout/option.hpp> #include <stout/synchronized.hpp> -#include <stout/thread_local.hpp> namespace process { @@ -682,7 +681,7 @@ inline bool wait(const ProcessBase* process, const Duration& duration) // Per thread process pointer. -extern THREAD_LOCAL ProcessBase* __process__; +extern thread_local ProcessBase* __process__; // NOTE: Methods in this namespace should only be used in tests to // inject arbitrary events. http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/src/libev.cpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/libev.cpp b/3rdparty/libprocess/src/libev.cpp index 8db9c3b..07717c4 100644 --- a/3rdparty/libprocess/src/libev.cpp +++ b/3rdparty/libprocess/src/libev.cpp @@ -18,7 +18,6 @@ #include <stout/duration.hpp> #include <stout/lambda.hpp> #include <stout/nothing.hpp> -#include <stout/thread_local.hpp> #include "event_loop.hpp" #include "libev.hpp" @@ -40,7 +39,7 @@ std::mutex* watchers_mutex = new std::mutex(); std::queue<lambda::function<void()>>* functions = new std::queue<lambda::function<void()>>(); -THREAD_LOCAL bool* _in_event_loop_ = nullptr; +thread_local bool* _in_event_loop_ = nullptr; void handle_async(struct ev_loop* loop, ev_async* _, int revents) http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/src/libev.hpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/libev.hpp b/3rdparty/libprocess/src/libev.hpp index 2e67967..d451931 100644 --- a/3rdparty/libprocess/src/libev.hpp +++ b/3rdparty/libprocess/src/libev.hpp @@ -23,7 +23,6 @@ #include <stout/lambda.hpp> #include <stout/synchronized.hpp> -#include <stout/thread_local.hpp> namespace process { @@ -47,7 +46,7 @@ extern std::queue<lambda::function<void()>>* functions; // Per thread bool pointer. We use a pointer to lazily construct the // actual bool. -extern THREAD_LOCAL bool* _in_event_loop_; +extern thread_local bool* _in_event_loop_; #define __in_event_loop__ *(_in_event_loop_ == nullptr ? \ _in_event_loop_ = new bool(false) : _in_event_loop_) http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/src/libevent.cpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/libevent.cpp b/3rdparty/libprocess/src/libevent.cpp index 093569e..eb3998c 100644 --- a/3rdparty/libprocess/src/libevent.cpp +++ b/3rdparty/libprocess/src/libevent.cpp @@ -24,7 +24,6 @@ #include <process/once.hpp> #include <stout/synchronized.hpp> -#include <stout/thread_local.hpp> #include "event_loop.hpp" #include "libevent.hpp" @@ -39,7 +38,7 @@ std::queue<lambda::function<void()>>* functions = new std::queue<lambda::function<void()>>(); -THREAD_LOCAL bool* _in_event_loop_ = nullptr; +thread_local bool* _in_event_loop_ = nullptr; void async_function(evutil_socket_t socket, short which, void* arg) http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/src/libevent.hpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/libevent.hpp b/3rdparty/libprocess/src/libevent.hpp index e7f273e..2eb9790 100644 --- a/3rdparty/libprocess/src/libevent.hpp +++ b/3rdparty/libprocess/src/libevent.hpp @@ -16,7 +16,6 @@ #include <event2/event.h> #include <stout/lambda.hpp> -#include <stout/thread_local.hpp> namespace process { @@ -26,7 +25,7 @@ extern event_base* base; // Per thread bool pointer. We use a pointer to lazily construct the // actual bool. -extern THREAD_LOCAL bool* _in_event_loop_; +extern thread_local bool* _in_event_loop_; #define __in_event_loop__ *(_in_event_loop_ == nullptr ? \ http://git-wip-us.apache.org/repos/asf/mesos/blob/305c5462/3rdparty/libprocess/src/process.cpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/process.cpp b/3rdparty/libprocess/src/process.cpp index f5b666f..96ce7db 100644 --- a/3rdparty/libprocess/src/process.cpp +++ b/3rdparty/libprocess/src/process.cpp @@ -107,7 +107,6 @@ #include <stout/stringify.hpp> #include <stout/strings.hpp> #include <stout/synchronized.hpp> -#include <stout/thread_local.hpp> #include "authenticator_manager.hpp" #include "config.hpp" @@ -617,11 +616,11 @@ PID<Help> help; // Global logging. PID<Logging> _logging; -// Per thread process pointer. -THREAD_LOCAL ProcessBase* __process__ = nullptr; +// Per-thread process pointer. +thread_local ProcessBase* __process__ = nullptr; -// Per thread executor pointer. -THREAD_LOCAL Executor* _executor_ = nullptr; +// Per-thread executor pointer. +thread_local Executor* _executor_ = nullptr; namespace metrics { namespace internal {
