| 167 | }; |
| 168 | |
| 169 | void uv_async_ptr::send() |
| 170 | { |
| 171 | auto* deleter = |
| 172 | std::get_deleter<uv_handle_deleter<uv_async_t>>(this->handle); |
| 173 | assert(deleter); |
| 174 | |
| 175 | std::lock_guard<std::mutex> lock(*deleter->handleMutex); |
| 176 | if (this->handle) { |
| 177 | uv_async_send(*this); |
| 178 | } |
| 179 | } |
| 180 | |
| 181 | int uv_async_ptr::init(uv_loop_t& loop, uv_async_cb async_cb, void* data) |
| 182 | { |