# util/virthreadpool.h
virThreadPoolFree;
+virThreadPoolGetCurrentWorkers;
+virThreadPoolGetFreeWorkers;
+virThreadPoolGetJobQueueDepth;
virThreadPoolGetMaxWorkers;
virThreadPoolGetMinWorkers;
virThreadPoolGetPriorityWorkers;
return ret;
}
+size_t virThreadPoolGetCurrentWorkers(virThreadPoolPtr pool)
+{
+ size_t ret;
+
+ virMutexLock(&pool->mutex);
+ ret = pool->nWorkers;
+ virMutexUnlock(&pool->mutex);
+
+ return ret;
+}
+
+size_t virThreadPoolGetFreeWorkers(virThreadPoolPtr pool)
+{
+ size_t ret;
+
+ virMutexLock(&pool->mutex);
+ ret = pool->freeWorkers;
+ virMutexUnlock(&pool->mutex);
+
+ return ret;
+}
+
+size_t virThreadPoolGetJobQueueDepth(virThreadPoolPtr pool)
+{
+ size_t ret;
+
+ virMutexLock(&pool->mutex);
+ ret = pool->jobQueueDepth;
+ virMutexUnlock(&pool->mutex);
+
+ return ret;
+}
+
/*
* @priority - job priority
* Return: 0 on success, -1 otherwise
size_t virThreadPoolGetMinWorkers(virThreadPoolPtr pool);
size_t virThreadPoolGetMaxWorkers(virThreadPoolPtr pool);
size_t virThreadPoolGetPriorityWorkers(virThreadPoolPtr pool);
+size_t virThreadPoolGetCurrentWorkers(virThreadPoolPtr pool);
+size_t virThreadPoolGetFreeWorkers(virThreadPoolPtr pool);
+size_t virThreadPoolGetJobQueueDepth(virThreadPoolPtr pool);
void virThreadPoolFree(virThreadPoolPtr pool);