eXtremeDB 当内存使用完毕之后,它不保证数据库的使用正确。但是,eXtremeDB提供了内存预警机制,我们可以设置当内存使用到一定的范围时,给用户一个提醒,我们可以通过回调函数做相关的工作。 该函数为mco_register_alloc_callback,请参见相关文档。 例如:

mco_register_alloc_callback(m_pclConnCtx->pclSession->getHandle(), alloc_callback, MCO_ALLOC_USED, m_nMemorySize/2);

void alloc_callback(mco_db_h db, mco_offs_t used ) {

MCO_RET rc = MCO_S_OK; mco_size32_t free_pages = 0; mco_size32_t total_pages = 0;

printf("\nCharles*\n\n"); rc = mco_db_free_pages(db, &free_pages ); if(MCO_S_OK != rc) {

printf("\n rc1 = %d\n", rc);

} rc = mco_db_total_pages(db, &total_pages); if ( MCO_S_OK != rc) {

printf("\n* rc2 = %d\n", rc);

} printf("Free pages count is %d, total pages count is %d\n" ,free_pages, total_pages);

}

但是,使用该函数的时候需要注意一点,如果应用使用的是多进程或者多线程,我们需要为每一个线程或者进程注册改函数。

eXtremeDB内存预警机制相关推荐

  1. eXtremeDB内存式实时数据库简介!

    eXtremeDB内存式实时数据库简介!    eXtremeDB内存式实时数据库是为实时系统及嵌入式系统而特别设计的数据库.与同类产品不同,eXtremeDB不是通过 对企业数据库面向实时嵌入式应用 ...

  2. eXtremeDB内存实时数据库

    这是一款实时和嵌入式软件,用来管理持续增长的复杂数据,来支持高级应用的特性.性能和可靠性,更短的产品开发周期等需求,驱使开发者在他们的设计中,考虑采用经验证的.成熟的商业数据库系统组件来,来满足应用层 ...

  3. 软件开发的浪费_软件项目和浪费时间

    软件开发的浪费 I switched into a programming life from a more traditional career path. Just a taste of prog ...

  4. eXtremeDB简介

    eXtremeDB(最短路径最快速的数据管理) eXtremeDB是美国麦科捷科技有限公司(McObject LLC)开发的一款专业的嵌入式实时内存数据库,它具有高性能,低开销,稳定可靠的极速实时数据 ...

  5. 内存数据库eXtremeDB介绍(1)

    eXtremeDB是一款实时内存数据库系统(IMDS),适用于各种高性能.小尺寸.紧密存储.零内存分配或几种兼有的服务器.嵌入式应用领域. eXtremeDB的开发完全基于ANSI C,可以运行在各种 ...

  6. mysql数据库映射到内存_基于共享内存的数据库映射

    基于共享内存的数据库映射 概述 随着各类行业软件对性能追求越来越高,因此对数据库处理的速度提出了新的挑战.然而大部分复杂的业务处理往往依赖体量较大的关系数据(如:Oracle,Mysql,Postgr ...

  7. 有了这篇你还说你不会redis性能优化、内存分析及优化

    点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达 今日推荐:推荐19个github超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 来源: https://bl ...

  8. 金融大数据革命-eXtremeDB金融数据库-列数据库

    金融大数据革命-eXtremeDB金融数据库 -基于矢量的统计函数的流水操作实现内存分析 简介 对于当今自动化资本市场的底层软件来说,其关键任务是管理与交易和报价相关的市场数据,其中包括用于算法交易. ...

  9. 应用充满想象 内存计算或颠覆商业模式

    应用充满想象 内存计算或颠覆商业模式 http://www.sina.com.cn  2011年08月08日 16:05  中国计算机报 什么是内存计算?内存计算是指CPU直接从内存,而不是硬盘上读取 ...

最新文章

  1. java注解,通过反射解析注解,模仿hibernate,获取sql语句。
  2. linux文件夹前的描述,Linux对内存结构的描述
  3. 查看python版本号-怎么查看python版本号
  4. python学习 01 变量
  5. n平方的求和公式_素数求和公式!!!(操作测试)
  6. Busybox 设置登录用户名、密码
  7. Jetty 的工作原理以及与 Tomcat 的比较
  8. Python环境下,提高pip安装库速度的方法!
  9. GUN ARM汇编中标号的引用在汇编和C语言中区别(monitor_flash_len = _bss_start - _armboot_start;)
  10. 均值(信息学奥赛一本通-T1060)
  11. 小程序显示服务器开小差,小程序提交一直显示网络错误,网络开小差,请刷新重试,切换网络也上不去,请问是?...
  12. 《Essential C++》笔记之Iterator Inserter(插入迭代器)
  13. byte用json存 c++_玩转golang——JSON高性能自动字段名
  14. 新型 JhoneRAT 恶意软件攻击中东地区
  15. 【李宏毅2020 ML/DL】P17 Convolutional Neural Network
  16. stm32g474芯片手册_STM32芯片资料-STM32F4 选型手册.pdf
  17. 腹有诗书气自华,新华三交换机大有不同
  18. google-auto之自动生成组件化文件
  19. 虚拟机未正常关闭,结果再次启动的时候打不开了?
  20. LeetCode刷题之旅正式开始

热门文章

  1. 移动端真机调试--weinre
  2. 孙海平:已有退休念头
  3. 关于vscode安装platformiO
  4. Wind River Workbench VxWorks项目开发流程
  5. 12 第十二节课笔记(面向对象编程)
  6. 1.系统进程与计划任务管理
  7. Python爬取视频(m3u8格式)
  8. kurento 6.14.0文档翻译第十一章 Kurento常用问题
  9. js判断输入是否含有空格
  10. java水仙花数10000_java打印10000以内的水仙花数