diff --git a/src/platform/waiter.h b/src/platform/waiter.h index 33daf95..4becc64 100644 --- a/src/platform/waiter.h +++ b/src/platform/waiter.h @@ -48,8 +48,8 @@ public: void close() { if (!valid()) return; - w_->close(h_); ::printf("close %p\n", h_); + w_->close(h_); h_ = waiter_t::invalid(); } diff --git a/src/platform/waiter_linux.h b/src/platform/waiter_linux.h index 5424702..bc05124 100644 --- a/src/platform/waiter_linux.h +++ b/src/platform/waiter_linux.h @@ -75,8 +75,10 @@ public: if (h == invalid()) return; auto w = waiter_cast(h); if (w->counter_.fetch_sub(1, std::memory_order_acq_rel) == 1) { + ::printf("destroy...\n"); ::pthread_cond_destroy (&(w->cond_ )); ::pthread_mutex_destroy(&(w->mutex_)); + ::printf("destroy end...\n"); } }