1 // Copyright 2009 The RE2 Authors. All Rights Reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 #ifndef RE2_UTIL_THREAD_H__ 6 #define RE2_UTIL_THREAD_H__ 7 8 #include <pthread.h> 9 10 class Thread { 11 public: 12 Thread(); 13 virtual ~Thread(); 14 void Start(); 15 void Join(); 16 void SetJoinable(bool); 17 virtual void Run() = 0; 18 19 private: 20 pthread_t pid_; 21 bool running_; 22 bool joinable_; 23 }; 24 25 #endif // RE2_UTIL_THREAD_H__ 26 27