void priorityqueue_free(PriorityQueue *q) { utility_assert(q); priorityqueue_clear(q); g_hash_table_destroy(q->map); g_free(q->heap); g_slice_free(PriorityQueue, q); }
void asyncpriorityqueue_clear(AsyncPriorityQueue *q) { g_assert(q); g_mutex_lock(&(q->lock)); priorityqueue_clear(q->pq); g_mutex_unlock(&(q->lock)); }