Support sync/async methods in the same service
diff --git a/src/cpp/server/server_builder.cc b/src/cpp/server/server_builder.cc
index ca82953..bd7dd76 100644
--- a/src/cpp/server/server_builder.cc
+++ b/src/cpp/server/server_builder.cc
@@ -88,8 +88,9 @@
   std::unique_ptr<ThreadPoolInterface> thread_pool;
   for (auto it = services_.begin(); it != services_.end(); ++it) {
     if ((*it)->service->has_synchronous_methods()) {
-      if (thread_pool == nullptr && !services_.empty()) {
+      if (thread_pool == nullptr) {
         thread_pool.reset(CreateDefaultThreadPool());
+        break;
       }
     }
   }