diff --git a/util/thread.cc b/util/thread.cc
index 7349991..b620105 100644
--- a/util/thread.cc
+++ b/util/thread.cc
@@ -2,8 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-#include <pthread.h>
-
 #include "util/util.h"
 #include "util/thread.h"
 
diff --git a/util/thread.h b/util/thread.h
index b9610e0..fb67bdc 100644
--- a/util/thread.h
+++ b/util/thread.h
@@ -5,7 +5,11 @@
 #ifndef RE2_UTIL_THREAD_H__
 #define RE2_UTIL_THREAD_H__
 
+#ifdef _WIN32
+#include <windows.h>
+#else
 #include <pthread.h>
+#endif
 
 class Thread {
  public:
@@ -15,12 +19,15 @@
   void Join();
   void SetJoinable(bool);
   virtual void Run() = 0;
- 
+
  private:
+#ifdef _WIN32
+  HANDLE pid_;
+#else
   pthread_t pid_;
+#endif
   bool running_;
   bool joinable_;
 };
 
 #endif  // RE2_UTIL_THREAD_H__
-
diff --git a/util/threadwin.cc b/util/threadwin.cc
index f1e456e..7b431ee 100644
--- a/util/threadwin.cc
+++ b/util/threadwin.cc
@@ -2,8 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-#include <windows.h>
-
 #include "util/util.h"
 #include "util/thread.h"
 
@@ -26,8 +24,7 @@
   CHECK(!running_);
   pid_ = CreateThread(NULL, 0, startThread, this, 0, NULL);
   running_ = true;
-  if (!joinable_)
-  {
+  if (!joinable_) {
     CloseHandle(pid_);
     pid_ = 0;
   }
@@ -36,10 +33,8 @@
 void Thread::Join() {
   CHECK(running_);
   CHECK(joinable_);
-  if (0 != pid_)
-  {
-      WaitForSingleObject(pid_, INFINITE);
-  }
+  if (pid_ != 0)
+    WaitForSingleObject(pid_, INFINITE);
   running_ = 0;
 }
 
