- 博客(8)
- 收藏
- 关注
原创 【postgre】编译源码并静态链接libpq.a(C库)的步骤与解决未定义引用的问题
一开始我以为libpq和普通其他库一样,要么可能有官网,要么可能在github上直接能找到,于是上github上找了libpq后发现了个jtv/libpqxx,后来查了查,这个原来是C++的库,虽然人家链接的时候也是-lpq,但是和C库的没啥关系。一开始怀疑是不是makefile没有链接上-lpq,确认不是这方面问题后,查看是不是自己编译的库有问题,于是看了看自己编译的libpq的符号表上是否有这些符号,有说明还是我链接有问题,没有说明除了这个库,我还缺少其他东西。2.出现找不到头文件怎么办?
2023-06-20 15:41:43
786
3
原创 mysql实现数据库增加规格限制,控制一张表所占用的磁盘大小【optimize table】 C api demo
【问题背景】要求对使用的数据库表进行规格限制,对某一张表限制在10MB内,超过限制就对这张表中的陈旧数据进行删除回收空间。判断陈旧数据的依据是其中一个datatime类型的属性相对而言的,对属性排序后删除一部分,并没有一个固定的时间长短。数据特点:datatime属性更改十分的频繁【解决方案】首先如何查询一张表占用磁盘大小为多少呢?select table_schema as 'DB',table_name as 'TABLE',table_rows as 'RECORED',
2022-03-30 15:05:26
1848
原创 STL:unordered_set
在C++11中stl新增了四种哈希相关的容器,其中就有unordered_set。它和set的区别在于:set:存储的时候自动有序,而unordered_set:是无序状态的所以unordered_set用几个关键字来叙述就是:无序,去重,key+value所以说怎么用?#include <stdio.h>#include <unordered_set>using namespace std;int main(){ //创建与复制 uno.
2022-02-22 17:32:22
307
原创 BUG笔记:双检查锁解决多线程不安全
【问题背景】项目中出现了挂死问题,gdb查看,表明是A函数中出现了内存越界错误,其中该A函数是被多个线程所调用,并且程序并不是立刻挂死,现象不易复现。【问题原因】该函数使用共享队列记录和存储数据,多个线程读取该队列获取数据。其中一部分的代码为:int sendTB(Myqueue * queue){ if(NULL == queue) return -3; if(queue->index >= queue->length ) ..
2022-02-21 20:53:34
318
原创 【C语言接口】长时间不使用mysql连接后mysql_query插入失败——MYSQL_OPT_RECONNECTION解决问题
问题表现前一天对数据库进行插入、查询、更新都没有问题,第二天使用的的时候一旦触发mysql_query()就会造成插入失败甚至段错误。由于项目实际需要,连接数据库后,没有mysql_close()。经过百度一波后,查询到的内容为,当一个连接连接到服务器后,如果在wait_time时间内不进行任何交互后,服务器就会断开连接,这种情况的直观表现是:超时后,第一次对数据库进行操作,会返回2006:Server has gone way的错误码。如何查询wait_time时间?进入到数据库后
2021-12-23 14:14:29
1529
原创 使用xcap进行更改报文并进行回放以及回放报文只能看到请求流量看不到响应流量的问题
问题背景:整体的网络环境:A------>B|C--------->D其中bc是一个虚拟机的两张网卡进行转发,达到A、D两台机器相互通信的网络环境。现在为了测试中间虚拟机的一些功能,需要使用xcap进行构造/修改报文,并且在A端进行回放报文操作。1.从wireshark进行抓包,获取到相关报文组:比如你想让这条网络拥有http的流量,那么最好先在本地机中抓取一个完整的http交互,(syn,acksyn,ack,fin,finack),这样我们改的时候要改的包也都在,而且不需要更改
2021-09-30 14:08:58
2101
原创 在windowsxp系统中更改http请求头添加cookie的几种方式以及差异
项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述:提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obta
2021-09-23 18:47:48
407
空空如也
基于二分查找的插值查找公式推导过程的
2022-10-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人