sample_cluster_parse_opts
此函数提供了一种从应用程序的命令行参数初始化集群参数的简单方法。
它会解析参数列表,并设置相应的 mco_cluster_params_t
和 mco_cluster_node_params_t
元素。
MCO_RET sample_open_database(
/*IN*/ int argc,
/*IN*/ char * argv[],
/*OUT*/ mco_cluster_params_t *cl_params,
/*OUT*/ mco_cluster_node_params_t *node_params,
/*IN*/ uint2 max_nodenum
)
参数
argc
int
应用程序命令行参数的计数。
argv
char *
应用程序命令行参数数组。
cl_params
mco_cluster_params_t
指向用于初始化的 mco_cluster_params_t
结构体的指针。
node_params
mco_cluster_node_params_t
指向用于初始化的 mco_cluster_node_params_t
结构体的指针。
max_nodenum
uint2
集群的最大节点 ID。
返回
MCO_S_OK
已成功创建数据库。
MCO_E_ILLEGAL_PARAM
指定的参数不一致或无效。
示例
#include <common.h>
#include <commoncl.h>
...
int main(int argc, char* argv[])
{
MCO_RET rc;
sample_memory_t dbmem;
mco_runtime_start();
mco_cluster_init();
/* 初始化并自定义集群参数 */
mco_cluster_params_init(&cl_params);
if (! sample_cluster_parse_opts(argc - 1, argv + 1, &cl_params, node_params, MCO_MAX_CLUSTER_SIZE))
{
printf("Usage : \n\t%s [CLUSTER_OPTIONS] [<n_nodes>] <node_id>\nwhere node_id from 0 to (n_nodes - 1)\n", argv[0]);
return 1;
}
sample_cluster_print_params(&cl_params);
...
}