mco_error_set_handler
接口适用于实时数据库 RT 。
注册一个致命错误处理程序。
由运行时的 mco_stop()
函数调用,每当遇到无法恢复的错误(返回码为 MCO_ERR_*
)时,mco_stop()
函数就会被调用。
因此,错误处理函数将接受一个整型参数,该参数是导致调用错误处理程序的 SmartEDB 错误代码(MCO_ERR_*
)值。
如果未注册错误处理程序,mco_stop()
将进入无限循环。
void mco_error_set_handler(
/*IN*/ mco_error_handler_f func
);
参数
func
应用程序中由运行时调用以处理致命错误情况的函数名称。
返回
没有返回值。
示例
/* 应用程序代码片段 */
const char * dbname = "SimpleDb";
static void errhandler( MCO_RET errcode)
{
printf( "\n SmartEDB runtime fatal error: %d", errcode );
getchar();
exit( -1 );
}
int main(int argc, char* argv[])
{
mco_db_h db;
MCO_RET rc;
mco_device_t dev;
mco_db_params_t db_params;
...
mco_error_set_handler( &errhandler );
if( (rc = mco_runtime_start()) != MCO_S_OK)
exit(-1);
}
文件
头文件:
mco.h
源文件:
mcoerr.c
库:
libmcounrt.a
头文件:
mco.h
源文件:
mcoerr.c
库:
libmcouwrt.a