Lines Matching refs:pool
70 int32 SAMGR_StartTaskPool(TaskPool *pool, const char *name) in SAMGR_StartTaskPool() argument
72 if (pool == NULL) { in SAMGR_StartTaskPool()
76 if (pool->top > 0) { in SAMGR_StartTaskPool()
80 ThreadAttr attr = {name, pool->stackSize, pool->priority, 0, 0}; in SAMGR_StartTaskPool()
81 while (pool->top < pool->size) { in SAMGR_StartTaskPool()
82 register ThreadId threadId = (ThreadId)THREAD_Create(TaskEntry, pool->queueId, &attr); in SAMGR_StartTaskPool()
84 …OR(HILOG_MODULE_SAMGR, "Start Task<%s, %hu, %hhu> failed!", name, pool->stackSize, pool->priority); in SAMGR_StartTaskPool()
87 pool->tasks[pool->top] = threadId; in SAMGR_StartTaskPool()
88 ++(pool->top); in SAMGR_StartTaskPool()
93 int32 SAMGR_ReleaseTaskPool(TaskPool *pool) in SAMGR_ReleaseTaskPool() argument
95 if (pool == NULL) { in SAMGR_ReleaseTaskPool()
99 pool->ref--; in SAMGR_ReleaseTaskPool()
100 if (pool->ref == 0) { in SAMGR_ReleaseTaskPool()
103 QUEUE_Put(pool->queueId, &exchange, 0, DONT_WAIT); in SAMGR_ReleaseTaskPool()
104 SAMGR_Free(pool); in SAMGR_ReleaseTaskPool()
109 TaskPool *SAMGR_ReferenceTaskPool(TaskPool *pool) in SAMGR_ReferenceTaskPool() argument
111 if (pool == NULL) { in SAMGR_ReferenceTaskPool()
115 if (pool->ref >= MAX_REF_NUM) { in SAMGR_ReferenceTaskPool()
119 pool->ref++; in SAMGR_ReferenceTaskPool()
120 return pool; in SAMGR_ReferenceTaskPool()