improve resmgr

This commit is contained in:
Rongsong Shen 2025-12-18 16:20:41 +08:00
parent 4db6b039c5
commit 1f1e4fdaba
10 changed files with 107 additions and 221 deletions

View file

@ -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

View file

@ -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;