Я хочу создать постоянные узлы в ZooKeeper. Для этого у меня есть две функции:
void create_completion(int rc, const char * value, const void * data){
// empty callback at this moment
}
void create(const char * path, const char * value){
zoo_acreate(zh, path, value, 0, &ZOO_OPEN_ACL_UNSAFE, 0, create_completion, NULL);
}
Что мне интересно, так это то, что если я позвоню create
функция от моего main
функция, а затем просто прекратить, затем данные не загружаются:
int main(){
... some code to initialize session
create("/newnode", ""); // node is not created
zookeeper_close(zh);
return 0;
}
Принимая во внимание, что если я делаю:
int main(){
... some code to initialize session
create("/newnode", ""); // node is created
bool flag = true;
while(flag){
usleep(10000000);
flag = false;
}
zookeeper_close(zh);
return 0;
}
затем "/newnode"
загружен в ZooKeeper
, Итак, что с этим не так и зачем мне действительно нужен этот цикл?
Задача ещё не решена.