You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by be...@apache.org on 2013/05/29 19:41:11 UTC
[33/35] git commit: Used ThreadLocal from stout.
Used ThreadLocal from stout.
Review: https://reviews.apache.org/r/11475
Project: http://git-wip-us.apache.org/repos/asf/incubator-mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mesos/commit/1caf21b4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mesos/tree/1caf21b4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mesos/diff/1caf21b4
Branch: refs/heads/master
Commit: 1caf21b4faea2322cf39ecabaa0d0578132ab6ce
Parents: bb1c353
Author: Benjamin Hindman <be...@twitter.com>
Authored: Mon May 27 12:29:53 2013 -0700
Committer: Benjamin Hindman <be...@twitter.com>
Committed: Tue May 28 14:20:25 2013 -0700
----------------------------------------------------------------------
3rdparty/libprocess/3rdparty/Makefile.am | 1 +
3rdparty/libprocess/Makefile.am | 1 -
3rdparty/libprocess/include/process/executor.hpp | 2 +-
3rdparty/libprocess/include/process/process.hpp | 2 +-
3rdparty/libprocess/include/process/thread.hpp | 49 -----------------
3rdparty/libprocess/src/process.cpp | 2 +-
3rdparty/libprocess/src/tests/process_tests.cpp | 23 --------
7 files changed, 4 insertions(+), 76 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/3rdparty/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/3rdparty/Makefile.am b/3rdparty/libprocess/3rdparty/Makefile.am
index 20599ec..7a9ede6 100644
--- a/3rdparty/libprocess/3rdparty/Makefile.am
+++ b/3rdparty/libprocess/3rdparty/Makefile.am
@@ -128,6 +128,7 @@ stout_tests_SOURCES = \
$(STOUT)/tests/none_tests.cpp \
$(STOUT)/tests/os_tests.cpp \
$(STOUT)/tests/strings_tests.cpp \
+ $(STOUT)/tests/thread_tests.cpp \
$(STOUT)/tests/uuid_tests.cpp
if OS_LINUX
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/Makefile.am
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/Makefile.am b/3rdparty/libprocess/Makefile.am
index b6b8abd..9facdd9 100644
--- a/3rdparty/libprocess/Makefile.am
+++ b/3rdparty/libprocess/Makefile.am
@@ -87,7 +87,6 @@ libprocess_la_SOURCES += \
$(top_srcdir)/include/process/run.hpp \
$(top_srcdir)/include/process/socket.hpp \
$(top_srcdir)/include/process/statistics.hpp \
- $(top_srcdir)/include/process/thread.hpp \
$(top_srcdir)/include/process/time.hpp \
$(top_srcdir)/include/process/timeout.hpp \
$(top_srcdir)/include/process/timer.hpp
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/include/process/executor.hpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/include/process/executor.hpp b/3rdparty/libprocess/include/process/executor.hpp
index 72fb2f1..f203476 100644
--- a/3rdparty/libprocess/include/process/executor.hpp
+++ b/3rdparty/libprocess/include/process/executor.hpp
@@ -4,9 +4,9 @@
#include <process/deferred.hpp>
#include <process/dispatch.hpp>
#include <process/id.hpp>
-#include <process/thread.hpp>
#include <stout/preprocessor.hpp>
+#include <stout/thread.hpp>
namespace process {
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/include/process/process.hpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/include/process/process.hpp b/3rdparty/libprocess/include/process/process.hpp
index 8228e4f..e70b4f7 100644
--- a/3rdparty/libprocess/include/process/process.hpp
+++ b/3rdparty/libprocess/include/process/process.hpp
@@ -16,9 +16,9 @@
#include <process/message.hpp>
#include <process/mime.hpp>
#include <process/pid.hpp>
-#include <process/thread.hpp>
#include <stout/duration.hpp>
+#include <stout/thread.hpp>
namespace process {
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/include/process/thread.hpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/include/process/thread.hpp b/3rdparty/libprocess/include/process/thread.hpp
deleted file mode 100644
index 3e3b5d2..0000000
--- a/3rdparty/libprocess/include/process/thread.hpp
+++ /dev/null
@@ -1,49 +0,0 @@
-#ifndef __PROCESS_THREAD_HPP__
-#define __PROCESS_THREAD_HPP__
-
-#include <pthread.h>
-#include <stdio.h> // For perror.
-#include <stdlib.h> // For abort.
-
-template <typename T>
-struct ThreadLocal
-{
- ThreadLocal()
- {
- if (pthread_key_create(&key, NULL) != 0) {
- perror("Failed to create thread local, pthread_key_create");
- abort();
- }
- }
-
- ThreadLocal<T>& operator = (T* t)
- {
- if (pthread_setspecific(key, t) != 0) {
- perror("Failed to set thread local, pthread_setspecific");
- abort();
- }
- return *this;
- }
-
- operator T* () const
- {
- return reinterpret_cast<T*>(pthread_getspecific(key));
- }
-
- T* operator -> () const
- {
- return reinterpret_cast<T*>(pthread_getspecific(key));
- }
-
-private:
- // Not expecting any other operators to be used (and the rest?).
- bool operator * (const ThreadLocal<T>&) const;
- bool operator == (const ThreadLocal<T>&) const;
- bool operator != (const ThreadLocal<T>&) const;
- bool operator < (const ThreadLocal<T>&) const;
- bool operator > (const ThreadLocal<T>&) const;
-
- pthread_key_t key;
-};
-
-#endif // __PROCESS_THREAD_HPP__
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/src/process.cpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/src/process.cpp b/3rdparty/libprocess/src/process.cpp
index 86414e5..3ffe0b5 100644
--- a/3rdparty/libprocess/src/process.cpp
+++ b/3rdparty/libprocess/src/process.cpp
@@ -61,7 +61,6 @@
#include <process/profiler.hpp>
#include <process/socket.hpp>
#include <process/statistics.hpp>
-#include <process/thread.hpp>
#include <process/time.hpp>
#include <process/timer.hpp>
@@ -71,6 +70,7 @@
#include <stout/net.hpp>
#include <stout/os.hpp>
#include <stout/strings.hpp>
+#include <stout/thread.hpp>
#include "config.hpp"
#include "decoder.hpp"
http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/1caf21b4/3rdparty/libprocess/src/tests/process_tests.cpp
----------------------------------------------------------------------
diff --git a/3rdparty/libprocess/src/tests/process_tests.cpp b/3rdparty/libprocess/src/tests/process_tests.cpp
index dc5c671..dfa11df 100644
--- a/3rdparty/libprocess/src/tests/process_tests.cpp
+++ b/3rdparty/libprocess/src/tests/process_tests.cpp
@@ -22,7 +22,6 @@
#include <process/gtest.hpp>
#include <process/process.hpp>
#include <process/run.hpp>
-#include <process/thread.hpp>
#include <process/time.hpp>
#include <stout/duration.hpp>
@@ -42,28 +41,6 @@ using testing::ReturnArg;
// TODO(bmahler): Move tests into their own files as appropriate.
-TEST(Process, thread)
-{
- ThreadLocal<ProcessBase>* _process_ = new ThreadLocal<ProcessBase>();
-
- ProcessBase* process = new ProcessBase();
-
- ASSERT_TRUE(*(_process_) == NULL);
-
- (*_process_) = process;
-
- ASSERT_TRUE(*(_process_) == process);
- ASSERT_FALSE(*(_process_) == NULL);
-
- (*_process_) = NULL;
-
- ASSERT_TRUE(*(_process_) == NULL);
-
- delete process;
- delete _process_;
-}
-
-
TEST(Process, event)
{
Event* event = new TerminateEvent(UPID());