Lines Matching refs:pool
171 CSPool_t pool; /* statistics on worker threads */
857 static PRStatus CreateWorker(CSServer_t *server, CSPool_t *pool)
881 CSPool_t *pool = &server->pool;
887 ("\t\tWorker(0x%p): started [%u]\n", me, pool->workers + 1));
891 pool->workers += 1; /* define our existance */
895 while (pool->accepting >= server->workers.accepting)
900 me, pool->accepting));
901 rv = PR_WaitCondVar(pool->acceptComplete, PR_INTERVAL_NO_TIMEOUT);
911 pool->accepting += 1; /* how many are really in accept */
920 pool->accepting -= 1;
921 PR_NotifyCondVar(pool->acceptComplete);
944 ((pool->workers < server->workers.minimum) ||
945 ((0 == pool->accepting)
946 && (pool->workers < server->workers.maximum))) ?
948 pool->active += 1;
951 if (another) (void)CreateWorker(server, pool);
961 pool->active -= 1;
977 ("\t\tWorker(0x%p): exiting [%u]\n", PR_CurrentThread(), pool->workers));
980 pool->workers -= 1; /* undefine our existance */
982 PR_NotifyCondVar(pool->exiting);
1027 rv = CreateWorker(server, &server->pool);
1054 ** waiting for clorine in the pool to take effect. During
1072 while (server->pool.workers > 0)
1077 me, server->pool.workers));
1078 (void)PR_WaitCondVar(server->pool.exiting, PR_INTERVAL_NO_TIMEOUT);
1276 server->pool.exiting = PR_NewCondVar(server->ml);
1277 server->pool.acceptComplete = PR_NewCondVar(server->ml);
1417 PR_DestroyCondVar(server->pool.exiting);
1418 PR_DestroyCondVar(server->pool.acceptComplete);