Easter79 Easter79
3年前
thrift简单示例 (基于C++)
这个thrift的简单示例,来源于官网(http://thrift.apache.org/tutorial/cpp),因为我觉得官网的例子已经很简单了,所以没有写新的示例,关于安装的教程,可以参考https://www.cnblogs.com/albizzia/p/10838646.html,关于thrift文件的语法,可以参考:https
Stella981 Stella981
3年前
C++primer学习笔记(六)
1.virtual函数是基类希望派生类重新定义的函数,希望派生类继承的函数不能为虚函数。根类一般要定义虚析构函数。2.派生类只能通过派生类对象访问protected成员,不能用基类对象访问。基类定义为virtual就一直为虚函数,派生类写不写virtual都是虚函数。用做基类的类必须是已定义的。3.存在虚函数指针或引用
Stella981 Stella981
3年前
C++性能优化(十) —— JeMalloc
C性能优化(十)——JeMalloc一、JeMalloc简介1、JeMalloc简介JeMalloc是一款内存分配器,最大的优点在于多线程情况下的高性能以及内存碎片的减少。GitHub地址:https://github.com/jemalloc
Stella981 Stella981
3年前
C调用read的乱码问题
发现自己真的被各种高级语言宠坏了。玩C还真的各种不懂的。问题例如下面的代码可以正确输出,但将retreadfile(fd,buf,len);换成readfile(fd,buf,len);输出就变乱码了。不懂啊。_(:з」∠)_include<stdio
Stella981 Stella981
3年前
C++之private虚函数
一般我们说虚函数,它的访问级别都是public的,用类对象可以直接调用,这样就可以实现运行时的类型绑定,那如果我们将虚函数私有化会出现什么情况呢?是不是很蛋疼的想法。include<iostreamclassDerived;classBase{public:voiddoF
Wesley13 Wesley13
3年前
C++ ORM ODB 入门(三)
本节介绍ODB的事务与异常。数据库操作经常涉及到操作多个表格,或者表格中的多行数据。因此必须保证整个过程是原子性的。ODB为数据库的事务提供了易于使用的接口。使用odb::databse的相关方法(persist、update、erase、load)时,必须处于某个事务之间。事务由odb::transcation类表示.odb::tra
Wesley13 Wesley13
3年前
C++ 多线程编程总结
在开发C程序时,一般在吞吐量、并发、实时性上有较高的要求。设计C程序时,总结起来可以从如下几点提高效率:并发异步缓存下面将我平常工作中遇到一些问题例举一二,其设计思想无非以上三点。1任务队列1.1   以生产者消费者模型设计任务队列      生产者消费者模型是人们非常熟
Stella981 Stella981
3年前
PostgreSQL 动态更新 C 语言函数
PostgreSQL对于C语言编写的函数(包括其他与C语言兼容的语言,如C、Rust等),是动态装载的,用CREATEFUNCTION创建完函数后,并不会立即装载,而是有连接建立之后,客户端第一次调用时才会进行装载,而且是装入到会话进程的内存里面去了。这时候,就算我们把.so文件删除,如果会话之前已调过一次函数的话,客户端还是
Wesley13 Wesley13
3年前
C 中常见的内存错误
最近读了一下《深入理解计算机操作系统》第9章,虚拟存储器。在9.11书上总结了C中常见的与存储器有关的错误。书上下面这一句话说的很有道理(我看的是中文版,觉得引用原版会更加原汁原味),就是指出现某次内存操作错误,如果当时就立刻表现出来,那会很幸运,不幸的是有时会在错误操作之后一段时间后才显现出来。所以有时候发现coredump文件堆栈中某次很