- 博客(10)
- 收藏
- 关注
原创 linux内核驱动的 “msleep(1)” 真如你所愿延时1ms了吗?
在调试驱动的时候碰到这样一个问题,代码片段如下:用于统计"mleep(1)"实际消耗时长。 struct timeval tpstart,tpend; unsigned long timeuses=0; do_gettimeofday(&tpstart); msleep(1); do_gettimeofday(&tpend);...
2019-08-26 15:53:33 1509 1
转载 Linux频繁存取文件,导致可用内存逐渐减少
在项目中新加一个需求,每100ms保存一帧图片到网络硬盘。但是增加了这个保存功能后,通过“top”或者“free”命令发现可用内存越来越少,由于太菜就判断为内存泄漏了,各种调试查找原因,发现无论如何都没有遏制住内存的持续减少,个人十分崩溃。 原因以及解决办法见博客:https://www.cnblogs.com/focai/p/5829897.html...
2019-09-24 11:13:52 727
原创 Linux复制jpg图片
刚开始用文件描述符实现,发现有时候能复制成功,有时候会出现复制后的图片打不开的情况,在网上搜发现图片应该以二进制流的方式复制,而文件描述在复制时用的是字符流的方式,所以正解如下:fin = fopen("src.jpg", "rb+");fout = fopen("dst.jpg","wb+");具体看介绍:https://baike.baidu.com/item/fopen...
2019-05-31 14:55:18 1381
原创 c++几种参数作用域验证
无意中看到这样一道面试题。下面是手敲后的验证结果 #ifndef CIRCAL_H#define CIRCAL_H class circal{public: circal(); double fun_1(double height = 4); double fun_2(double height = 4); double fun_3(doub...
2019-02-20 15:28:04 330
原创 可变长参数与主函数传参
Code #include <stdio.h>#include <stdarg.h> int paramore(int a,...){va_list argp;va_start(argp,a);char * c_b = va_arg(argp,char*);printf("c_b = %s\n",c_b);int int_a = ...
2019-01-02 16:33:18 302
转载 Qt事件循环的一些理解(exec、eventloop)
1、事件循环一般用exec()函数开启。QApplicaion::exec()、QMessageBox::exec()都是事件循环。其中前者又被称为主事件循环。 事件循环首先是一个无限“循环”,程序在exec()里面无限循环,能让跟在exec()后面的代码得不到运行机会,直至程序从exec()跳出。从exec()跳出时,事件循环即被终止。QEventLoop::quit()能够终止事件循环...
2018-12-27 16:24:45 751
原创 模板单例设计
Stdlib log模块类图Stdlib 模板单例源码 这里只提炼单例模板的使用,所以不附上全部源码。Singleton.h:#ifndef __SINGLETON_H#define __SINGLETON_H /** * Singleton design pattern; only one instance is allowed. */templa...
2018-12-20 17:26:56 212
原创 大小端检测,一步到位
内核源码检测大小端:static union { char c[4]; unsigned long l; } endian_test = { { 'l', '?', '?', 'b' } };#define ENDIANNESS ((char)endian_test.l) 实现方法:c++#include <iostream>using nam...
2018-11-13 11:00:55 198
原创 container_of学习
在Linux内核源码中碰到了一个宏函数container_of(ptr,type,member)/******************************************************************************* 函 数 名:container_of 描 述:已知结构体type的成员member的地址ptr,求解结构体type的起始地址...
2018-11-13 10:50:30 129
原创 unknown debugger type no engine
1 到 https://www.remkoweijnen.nl/blog/2013/06/13/debugging-tools-for-windows-direct-download/ 下载Debugging Tools for Windows 直接默认安装即可 2 如下图配置在Debuggers手动添加cdb.exe路径 3 在 kit中手动添加调试器, 并直接在工程里修改套...
2018-07-28 15:11:30 533
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人