forked from lei.chen/myxce
improve resmgr
This commit is contained in:
parent
4db6b039c5
commit
1f1e4fdaba
10 changed files with 107 additions and 221 deletions
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
#include "htab.h"
|
||||
#include "mylock.h"
|
||||
#include "xce/types.h"
|
||||
#include "xlist.h"
|
||||
#include "zarray.h"
|
||||
|
||||
|
|
@ -13,6 +14,12 @@ typedef struct {
|
|||
zarray_t data;
|
||||
} kvmgr_t;
|
||||
|
||||
typedef struct {
|
||||
kvmgr_t resdef;
|
||||
int nshared;
|
||||
int nunshared;
|
||||
} resmgr_t;
|
||||
|
||||
extern int kvmgr_init(kvmgr_t*, hash_key_fn_t, int, int, zarray_item_killer_t);
|
||||
extern void kvmgr_fini(kvmgr_t*);
|
||||
extern void* kvmgr_lock(kvmgr_t*, void*, int);
|
||||
|
|
@ -21,4 +28,11 @@ extern int32_t kvmgr_add(kvmgr_t*, void*, void*);
|
|||
extern void kvmgr_del(kvmgr_t*, void*);
|
||||
extern int kvmgr_iter(kvmgr_t*, zarray_iter_skip_fn_t, xlist_t*, void*);
|
||||
|
||||
extern int resmgr_init(resmgr_t*, int, int, zarray_item_killer_t);
|
||||
extern void resmgr_fini(resmgr_t*);
|
||||
extern int32_t resmgr_add_res(resmgr_t*, xce_resource_t*);
|
||||
extern xce_resource_t* resmgr_lockres(resmgr_t*, char*, int);
|
||||
extern void resmgr_del_res(resmgr_t*, xce_resource_t*);
|
||||
extern int resmgr_iter(resmgr_t*, xlist_t*, void*);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -90,6 +90,7 @@ typedef struct {
|
|||
zarray_t jobs;
|
||||
} jobmgr_t;
|
||||
|
||||
#if 0
|
||||
typedef struct {
|
||||
mylock_t lock;
|
||||
htab_t htab;
|
||||
|
|
@ -98,6 +99,7 @@ typedef struct {
|
|||
zarray_t defs;
|
||||
zarray_t sharedinst;
|
||||
} resmgr_t;
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
mylock_t lock;
|
||||
|
|
@ -125,6 +127,7 @@ typedef struct {
|
|||
zarray_t endpoints;
|
||||
endpoint_t ep;
|
||||
zarray_t configs;
|
||||
zarray_t sharedinst;
|
||||
controller_t controllers[N_CONTROLLER_MAX];
|
||||
int myidx;
|
||||
int master;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue