| 204 | |
| 205 | template <typename PointType> |
| 206 | void KD_TREE<PointType>::stop_thread() |
| 207 | { |
| 208 | pthread_mutex_lock(&termination_flag_mutex_lock); |
| 209 | termination_flag = true; |
| 210 | pthread_mutex_unlock(&termination_flag_mutex_lock); |
| 211 | if (rebuild_thread) |
| 212 | pthread_join(rebuild_thread, NULL); |
| 213 | pthread_mutex_destroy(&termination_flag_mutex_lock); |
| 214 | pthread_mutex_destroy(&rebuild_logger_mutex_lock); |
| 215 | pthread_mutex_destroy(&rebuild_ptr_mutex_lock); |
| 216 | pthread_mutex_destroy(&points_deleted_rebuild_mutex_lock); |
| 217 | pthread_mutex_destroy(&working_flag_mutex); |
| 218 | pthread_mutex_destroy(&search_flag_mutex); |
| 219 | } |
| 220 | |
| 221 | template <typename PointType> |
| 222 | void *KD_TREE<PointType>::multi_thread_ptr(void *arg) |
nothing calls this directly
no outgoing calls
no test coverage detected