forked from lei.chen/myxce
improve resmgr/jobmgr/qmgr/workermgr
This commit is contained in:
parent
2362b32825
commit
8d78f0cbeb
12 changed files with 161 additions and 575 deletions
|
|
@ -246,3 +246,91 @@ int resmgr_iter(resmgr_t* mgr, xlist_t* l, void* arg)
|
|||
{
|
||||
return kvmgr_iter(&(mgr->resdef), NULL, l, arg);
|
||||
}
|
||||
|
||||
int qmgr_init(qmgr_t* mgr, int nslots, int delta, zarray_item_killer_t killer)
|
||||
{
|
||||
return kvmgr_init(&(mgr->queues), string_hash_key, nslots, delta, killer);
|
||||
}
|
||||
|
||||
void qmgr_fini(qmgr_t* mgr) { kvmgr_fini(&(mgr->queues)); }
|
||||
|
||||
int qmgr_add(qmgr_t* mgr, queue_t* q)
|
||||
{
|
||||
return kvmgr_add(&(mgr->queues), (void*)q->queue.queue, q);
|
||||
}
|
||||
|
||||
queue_t* qmgr_lockq(qmgr_t* mgr, char* name, int op)
|
||||
{
|
||||
return (queue_t*)kvmgr_lock(&(mgr->queues), (void*)name, op);
|
||||
}
|
||||
|
||||
void qmgr_delq(qmgr_t* mgr, queue_t* q)
|
||||
{
|
||||
kvmgr_del(&(mgr->queues), (void*)q->queue.queue);
|
||||
}
|
||||
|
||||
int qmgr_iter(qmgr_t* mgr, xlist_t* l, void* arg)
|
||||
{
|
||||
return kvmgr_iter(&(mgr->queues), NULL, l, arg);
|
||||
}
|
||||
|
||||
int workermgr_init(workermgr_t* mgr, int nslots, int delta,
|
||||
zarray_item_killer_t killer)
|
||||
{
|
||||
return kvmgr_init(&(mgr->workers), string_hash_key, nslots, delta, killer);
|
||||
}
|
||||
|
||||
void workermgr_fini(workermgr_t* mgr) { kvmgr_fini(&(mgr->workers)); }
|
||||
|
||||
int workermgr_add(workermgr_t* mgr, worker_t* w)
|
||||
{
|
||||
return kvmgr_add(&(mgr->workers), (void*)w->host.name, w);
|
||||
}
|
||||
|
||||
worker_t* workermgr_lock(workermgr_t* mgr, char* name, int op)
|
||||
{
|
||||
return (worker_t*)kvmgr_lock(&(mgr->workers), (void*)name, op);
|
||||
}
|
||||
|
||||
worker_t* workermgr_lock_byid(workermgr_t* mgr, int idx, int op)
|
||||
{
|
||||
return (worker_t*)kvmgr_lock_byid(&(mgr->workers), idx, op);
|
||||
}
|
||||
|
||||
void workermgr_del(workermgr_t* mgr, worker_t* w)
|
||||
{
|
||||
kvmgr_del(&(mgr->workers), (void*)w->host.name);
|
||||
}
|
||||
|
||||
int workermgr_iter(workermgr_t* mgr, xlist_t* l, void* arg)
|
||||
{
|
||||
return kvmgr_iter(&(mgr->workers), NULL, l, arg);
|
||||
}
|
||||
|
||||
int jobmgr_init(jobmgr_t* mgr, int nslots, int delta,
|
||||
zarray_item_killer_t killer)
|
||||
{
|
||||
return kvmgr_init(&(mgr->jobs), int_hash_key, nslots, delta, killer);
|
||||
}
|
||||
|
||||
void jobmgr_fini(jobmgr_t* mgr) { kvmgr_fini(&(mgr->jobs)); }
|
||||
|
||||
int jobmgr_add_job(jobmgr_t* mgr, job_t* j)
|
||||
{
|
||||
return kvmgr_add(&(mgr->jobs), (void*)j->job.jobid, j);
|
||||
}
|
||||
|
||||
job_t* jobmgr_lockjob(jobmgr_t* mgr, uint64_t jobid, int op)
|
||||
{
|
||||
return (job_t*)kvmgr_lock(&(mgr->jobs), (void*)jobid, op);
|
||||
}
|
||||
|
||||
void jobmgr_del_job(jobmgr_t* mgr, job_t* j)
|
||||
{
|
||||
kvmgr_del(&(mgr->jobs), (void*)j->job.jobid);
|
||||
}
|
||||
|
||||
int jobmgr_iter(jobmgr_t* mgr, xlist_t* l, void* arg)
|
||||
{
|
||||
return kvmgr_iter(&(mgr->jobs), NULL, l, arg);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue