- 博客(336)
- 资源 (41)
- 收藏
- 关注
转载 生成core文件的步骤
1、需要在/etc/security/limits.conf中添加: * soft core 1000000 * hard core 10000002、在.bash_profile里有设置 ulimit -c unlimited //表示可以生成99999大小的core文件。0表示不生成 ulimit -c 999993、echo "/tm
2013-12-13 10:07:17 1793
转载 用GDB调试Segmentation Fault错误
调试Linux程序的时候,出现Segmentation Fault是最郁闷的事情了,程序代码量很大的时候,可能花很多时间都找不到出错原因。 这里介绍一种对你调试Segmentation Fault很帮助的方法,可能能迅速帮助你找到出错的代码行。 这种方法需要用到Linux提供的core dump机制:当程序中出现内存操作错误时,会发生崩溃并产生核心文件(core文件
2013-12-12 16:24:46 1330
转载 tmpfs 文件系统介绍
如果我必须一下子说清楚 tmpfs,我会说 tmpfs 就象虚拟磁盘(ramdisk),但不一样。象虚拟磁盘一样,tmpfs 可以使用您的 RAM,但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备,并需要一个 mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了。总而言之,这让 tmpfs 成为我有机会遇到的最好的基于 RAM
2013-12-11 14:51:34 2394
原创 linux 内存泄露检测工具——valgrind
valgrind是linux下一个可用调试、查看内存泄露的工具,其官方网站:http://www.valgrind.org/使用时可用命令:valgrind -v --leak-check=full ./可执行程序名例如:valgrind -v --leak-check=full ./mosquitto这里mosquitto是可执行程序的名称ce
2013-12-06 16:49:28 1807
原创 C开源hash代码uthash的用法总结(2)
5.完整程序例子5.1.key类型为int的完整的例子#include /* gets */#include /* atoi, malloc */#include /* strcpy */#include "uthash.h"struct my_struct { int ikey; /* key */ c
2013-11-13 10:51:02 7682 2
原创 C开源hash代码uthash的用法总结(1)
uthash 是C的比较优秀的开源代码,它实现了常见的hash操作函数,例如查找、插入、删除等待。该套开源代码采用宏的方式实现hash函数的相关功能,支持C语言的任意数据结构最为key值,甚至可以采用多个值作为key,无论是自定义的struct还是基本数据类型,需要注意的是不同类型的key其操作接口方式略有不通。 使用uthash代码时只需要包含头文件"uthash.h"即可。由于该
2013-11-13 10:42:52 27768 8
原创 长宽相等的矩阵(二维数组)逆时针旋转90度
将长宽相等的矩阵(二维数组)逆时针旋转90度,例如,有如下一个二维数组00 10 20 30 40 50 60 01 11 21 31 41 51 61 02 12 22 32 42 52 62 03 13 23 33 43 53 63 04 14 24 34 44 54 64 05 15 25 35 45 55 65 06 16 26 36 46 56 6
2013-11-04 21:46:06 3649
原创 字符串分割函数strtok_r的用法
一、函数strtok_r的使用 函数strtok_r可以将一个字符串按照指定的分割符进行分割,例如将字符串:"hello, jason, please come here",按照","分割为:"hello""jason""please come here"也可以按照分隔符" "分割为:"hello,""jason,""please come here" 二、
2013-10-30 15:47:57 32866 1
原创 wireshark windows版数据过滤插件安装及使用
1、下载wireshark和数据过滤插件以及本文中所涉及的全部下载资源:http://download.csdn.net/detail/hjx_1000/6442019 2、数据过滤插件的安装方法: 2.1、下载插件generic.dll(Windows)或者 generic.so(Linux),地址为:http://wsgd.free.fr/download.h
2013-10-23 14:40:10 7291 1
原创 linux安装软件时提示找不到镜像的问题:Couldn't resolve host 'mirrorlist.centos.org'
问题:[root@cddserver2 ~]# yum -y install gccLoaded plugins: fastestmirror, prestoCould not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was14: PYCURL
2013-10-12 16:09:03 8394
原创 查看、修改linux系统的最大链接数限制、文件描述符限制、端口范围限制、虚拟内存等
由于socket在linux中也是用文件描述符来表示,因此最大连接数的修改与文件描述符的限制是同一个问题,1、查看当前文件描述符的限制数目的命令: ulimit -n 2、修改文件描述符的限制数目 2.1 临时改变当前会话: ulimit -n 65536 2.2 永久变更需要下面两个步骤: 1) 修改/etc/security/limits.conf 文件,
2013-10-10 16:48:33 10632
原创 linux常用命令和操作笔记
1、通过程序名字统计当前机子共运行了多少个该程序实例,例如统计当前机子共有多个mosquitto_sub实例:[root@SH-243 ~]# ps -ef | grep mosquitto_sub | wc 7891 142029 8833032、通过端口号统计当前机子 中共有多少个连接使用了该端口,例如统计当前机子中1883端口上有多少个连接: [root@SH-
2013-10-08 11:48:13 1186
转载 构建C1000K的服务器(1) – 基础
原文地址:http://www.ideawu.net/blog/archives/740.html 著名的 C10K 问题提出的时候, 正是 2001 年, 到如今 12 年后的 2013 年, C10K 已经不是问题了, 任何一个普通的程序员, 都能利用手边的语言和库, 轻松地写出 C10K 的服务器. 这既得益于软件的进步, 也得益于硬件性能的提高.现在, 该是考虑 C1000K,
2013-10-08 11:23:07 1763
原创 error: expected expression before ‘;’ token的问题
在借用mosquitto源码,写一个订阅客户端时,使用了pthread_create和pthread_join时出现:error: expected expression before ‘;’ token的问题:相关代码为:_ret = pthread_create(&g_clients_db.handle_thread_id, NULL, handle_thread,NULL
2013-09-30 13:25:36 29413
转载 -bash:fork:Resource temporarily unavailable
Java代码 出现这个问题的原因是linux用户的连接数设置的太小,只要修改max user processes就可以 www.2cto.com 设置各linux 用户的最大进程数,下面我把某linux用户的最大进程数设为10000个: ulimit -u 10000 ulimit -a core file size (bloc
2013-09-06 11:58:36 1431
原创 在linux 下编译c程序时“ error:dereferencing pointer to incomplete type”的问题
在linux 下编译c程序时经常会遇到“ error:dereferencing pointer to incomplete type”的问题,该问题的原因是:结构体定义不规范造成的,回想一下,教科书中正规的结构体定义方式是:struct 结构体名{ 数据类型 成员1; ... 数据类型 成员n;};在linux中经常使用gcc进行编译c语言程序时更严格
2013-09-02 17:19:05 6194
转载 select,poll,epoll区别
原文地址:http://blog.csdn.net/Sunboy_2050/article/details/5971779select的本质是采用32个整数的32位,即32*32= 1024来标识,fd值为1-1024。当fd的值超过1024限制时,就必须修改FD_SETSIZE的大小。这个时候就可以标识32*max值范围的fd。对于单进程多线程,每个线程处理多个fd的情况,sel
2013-07-24 10:20:14 1207
转载 Windows下搭建Eclipse+Android4.0开发环境
官方搭建步骤: http://developer.android.com/index.html搭建环境之前需要下载下面几个文件包:一、安装Java运行环境JRE(没这个Eclipse运行不起来)和JDK 官网下载 http://www.oracle.com/technetwork/java/javase/downloads/index.html, 先装J
2013-07-16 11:51:01 1106
转载 工作变得简单又高效 试试这八个WebApp
摘要:你的工作类型是不是需要和同事协作交流,是不是要和客户联系?选择正确的工具和方法既可以提高工作效率,又可以节省大量时间。下面的这些Apps也许能成为帮你解决问题的得力助手。有的时候只用得到一个Web App就可以解决金融危机,简化操作或者是让团队更有效地交流,这通常和你使用的App有关。许多公司对待技术问题的解决办法就是通过升级来让工具变得更强大,这已经在组织内成为一种连锁反应了。
2013-07-01 10:09:41 1636
转载 不用软件直接查询QQ好友的IP地址
使用快捷键 “开始键+R”,或者打开开始,搜索“运行”,运行cmd。输入 tasklist 命令,得到当前进程的名字,PID,会话,内存使用情况。例如当前两个QQ的PID是4616,4618。给QQ好友随便发送一个截图,可以建立一个直接到对方电脑的Socket连接(因为QQ发送消息时候文字利用服
2013-06-21 10:29:32 4122 2
原创 函数的重载、覆盖和隐藏
从下面的这个例子中可以看到函数的重载、覆盖和隐藏的具体意思,以及它们之间的区别:#includeusing namespace std;class CParent{public:int Add(int iVal) // [P-1] {cout int Add(int iVal)]"return iVal+1;}int Add(ch
2013-06-07 10:35:44 1466
原创 Windows平台下动态链接库的总结
1、 动态链接库与静态连接库 静态连接库与动态链接库都是经过编译器编译之后的,在计算机上可以直接运行的二进制目标文件,就像exe文件一样,但不同于exe文件的是静态链接库和动态链接库不可以独立运行,一般而言,动态链接库和动态链接是在内部实现了一些功能,对外提供了一组接口函数使得外部的程序能够通过这些对外的接口函数来使用其内部的功能。 静态链接库,是在调用该静态库的可
2013-06-06 09:08:45 3143 2
转载 VS2008操作PPT
VC6.0控制PPT很方便,网上的代码也很多,到了.NET,操作office的方式有所改进,完全按6.0的方式会出很多问题,根据做的有关用VS2008操作PPT的工作,整理一下。开始是要用VS2005的,发现问题很多,似乎根本都调不了,改到2008后很快就能运行了,按理说两个应该是差不多的,不知道2005出什么问题了。现在用2008操作PPT:首先创建一个MFC的对话框程序,如图
2013-06-04 14:49:36 2020
转载 VS2008中C++打开Excel(MFC)
第一步:建立project选择C++下的MFC Application选择dialog based,中文。之后点击finish第二步:导入EXCEL头文件选择Project->AddClass->MFC Class From Typelib后,点击Add,进入MFC ClassFrom Typelib Wizard对话框下,选择Microsoft
2013-06-03 15:54:37 2452
转载 eclipse中java环境配置
到官方网站http://www.eclipse.org/下载eclipse。ECLIPSE是绿色版软件,解压后即可,这里用的是eclipse3.4中文版。但在此之前要安装JDK(Java Development Kit)包含了Java运行环境(Java Runtime Envirnment),Java工具和Java基础的类库(rt.jar)。JDK是一个写Java的applet和应用程序的
2013-05-28 22:23:24 1572
转载 VC 2008 Express 编译OpenCV2.0/2.1
比较好的中文OpenCV网站:http://www.opencv.org.cn/index.php/VC_2008_Express%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.0/2.1安装所需要的软件[编辑]安装VC++ 2008 ExpressVisual C++ Express是微软推出的一款免费集成开发环境,如果你没有足够
2013-05-28 15:45:00 1184
转载 VS2010+Opencv-2.4.0的配置攻略
摘要:在VS2010环境中应用Opencv,网上找到了很多配置方法,但大多都是老版本的,很多新手面对最新版本的Opencv无从下手,就给新手童鞋写了这么一篇超级详细的配置攻略,贴上来共享。要强调一点的就是,这种配置方法里使用的Opencv库是直接安装Opencv时候自带的dll库,在你的VS里面是无法调试Opencv的。如果需要调试Opencv,必须应用自己编译出来的Opencv库,具体怎么编译自
2013-05-26 10:41:49 1212
转载 VS2010平台下OpenCV编译和安装
要点: 1) XP+ Visual Stuio 2010 + OpenCV-2.4.2.exe + cmake-2.8.8-win32-x86.exe 2) 如何CMake OpenCV源代码得到可编译的VS2010项目 3) 如何使用VS2010编译OpenCV源码 4) 如何配置OpenCV工程
2013-05-26 10:18:09 1254
原创 隐式连接时,windows下VS(包括2005、2008等)下配置OpenCV动态库的步骤
根据隐式载入时链接的需求,如果一个C++工程需要通过隐式的方式载入动态链接库,则需要:头文件、lib文件和dll文件,其中头文件中有动态库导出函数的声明,lib库里面包含了所有导出符号(包括函数和变量),在构建可执行文件的时候需要该lib库(可简单认为VS在编译可执行文件的时候需要此lib文件),在程序运行的时候不需要此文件;dll文件在程序执行的时候需要加载此动态库。因此,在VS的C++工程中如
2013-05-23 22:04:17 1527
转载 图像缩放--OpenCV cvResize函数
void cvResize( const CvArr* src, CvArr* dst, int interpolation=CV_INTER_LINEAR ); src输入图像.dst输出图像.interpolation插值方法:CV_INTER_NN - 最近邻插值,CV_INTER_LINEAR - 双线性插值 (缺省使用)CV_INTER_AREA - 使用象素关系重采
2013-05-16 15:56:06 3939
转载 Canny边缘检测算法原理及其VC实现详解(二)
原文地址:http://blog.csdn.net/likezhaobin/article/details/68926293、 Canny算法的实现流程 由于本文主要目的在于学习和实现算法,而对于图像读取、视频获取等内容不进行阐述。因此选用OpenCV算法库作为其他功能的实现途径(关于OpenCV的使用,作者将另文表述)。首先展现本文将要处理的彩色图片。
2013-05-16 09:49:28 1468
转载 Canny边缘检测算法原理及其VC实现详解(一)
原文地址:http://blog.csdn.net/likezhaobin/article/details/6892176 图象的边缘是指图象局部区域亮度变化显著的部分,该区域的灰度剖面一般可以看作是一个阶跃,既从一个灰度值在很小的缓冲区域内急剧变化到另一个灰度相差较大的灰度值。图象的边缘部分集中了图象的大部分信息,图象边缘的确定与提取对于整个图象场景的识别与理解
2013-05-16 09:46:56 1608
转载 VC++动态链接库(DLL)编程深入浅出(zz)
1.概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该D
2013-05-14 14:01:59 1440
转载 lib和dll文件的区别和联系
什么是lib文件,lib和dll的关系如何 ?(1)lib是编译时需要的,dll是运行时需要的。 如果要完成源代码的编译,有lib就够了。 如果也使动态连接的程序运行起来,有dll就够了。 在开发和调试阶段,当然最好都有。 (2)一般的动态库程序有lib文件和dll文件。lib文件是必须在编译期就连接到应用程序中的,而dll文件是运行期才会被调用的。如果有dll文件,那么对应的
2013-05-14 08:45:21 1289
转载 Haar特征
SIFT/SURF、haar特征、广义hough变换的特性对比分析SIFT/SURF基于灰度图,一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行NMS,从而得到粗略的特征点,再使用二次插值法得到精确特征点所在的层(尺度),即完成了尺度不变。二、在特征点选取一个与尺度相应的邻域,求出主方向,其中SIFT采用在一个正
2013-05-13 14:08:54 3700
转载 三种强大的物体识别算法——SIFT/SURF、haar特征、广义hough变换的特性对比分析
识别算法概述: SIFT/SURF基于灰度图,一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行NMS,从而得到粗略的特征点,再使用二次插值法得到精确特征点所在的层(尺度),即完成了尺度不变。二、在特征点选取一个与尺度相应的邻域,求出主方向,其中SIFT采用在一个正方形邻域内统计所有点的梯度方向
2013-05-13 13:41:51 1521
转载 error LNK2005: _DllMain@12 already defined in MSVC
error LNK2005: _DllMain@12 already defined in MSVC方案一、编程中经常能遇到LNK2005错误——重复定义错误,其实LNK2005错误并不是一个很难解决的错误。弄清楚它形成的原因,就可以轻松解决它了。 造成LNK2005错误主要有以下几种情况: 1.重复定义全局变量。可能存在两种情况: A、对于一
2013-05-10 09:48:00 1872
原创 Image flow使用
1、chrome 浏览器中F12快捷键用于打开或者关闭调试窗口,F11用于进入/退出全屏。2、image flow 各属性的用法,(1)reflections属性,如果下载之后解压并运行就会发现图片显示不出来,都是一个个框框,这很可能是没有找到图片的问题,在chrome浏览器中按F12进入调试界面,可以看到图片的路径不对,并不是img/XXX.png,如下图所示:打
2013-05-07 20:49:51 4650 2
原创 shell脚本的一些用法笔记
1、在一般命令窗口输入的命令直接拷贝到脚本文件中就可以执行。2、判断文件或文件夹是否存在、具有执行权力等。[改写自网络]#!/bin/shNovaPath=”/var/log/httpd/”NovaFile=”/var /log/httpd/access.log”#(1) -x 参数判断$NovaPath是否存在并且是否具有可执行权限if [ ! -x "$NovaPa
2013-05-02 09:50:40 1366
转载 Structured Exception Handling
http://msdn.microsoft.com/zh-cn/magazine/cc301172.aspxMatt Pietrek 著 董岩 译原文:http://www.microsoft.com/msj/0197/exception/exception.aspx 在Win32操作系统提供的所有功能中,使用最广泛而又没有公开的恐怕要数结构化异常处理(Structured
2013-04-26 13:55:19 1607
Mosq_Tester-20190722.zip
2020-02-01
mqtt-websocket的js测试客户端
2018-11-24
mosquitto-websocket-client
2018-03-15
mosquitto支持websocket的配置
2018-11-24
python-iniparse-0.4-9.el7.noarch.rpm
2018-03-07
SimpleJava、Linux命令行、Java NIO (中文版)、Linux Performance and Tuning Guidelines
2015-01-04
C开源hash代码uthash
2013-11-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人