- 博客(134)
- 资源 (3)
- 收藏
- 关注
转载 Linux下Watchdog
周 婷(moting9@gmail.com), 软件工程师, IBM 中国系统技术实验室2007 年 10 月 29 日Linux 在不同领域如电信、终端便携设备等得到广泛应用,不同领域的应用对 Linux系统也提出相应的需求。Carrier Grade Linux 是 OSDL(Open Source Development Lab)发布的电信级 Linux 的标准,在系统可用性
2014-04-17 09:24:22
9132
转载 堆和栈的区别 (温故而知新)
堆和栈的区别 (转贴) 非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥!堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由
2014-04-11 15:40:49
839
转载 C++小知识之指针和引用的区别(温故而知新)
C++小知识之指针和引用的区别 温故而知新,指针和引用的概念,大学时都已熟知,实际用的时候往往又有些疑惑,故深入探究一下。从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。而引用是一个别名,它在逻辑上不是独立的,它的存在具有依附性,所以引用必须在一开始就被初始化,而且其
2014-04-02 11:22:30
710
转载 ALSA 0.9.0 HOWTO---基本PCM音频
作者: Matthias Nagorni译者: Kevin Lei转载请注明出处:http://kevinlei.cublog.cn1. 介绍这个HOWTO计划提供一个简短的介绍,使用ALSA 0.9.0写一个简单的音频应用程序.Section2解释了PCM音频最基本的函数.如果你删除其中的解释文本,那么最后你会得到一个极小的PCM回放程序. Section3简短地
2012-10-09 14:15:26
1479
转载 Linux启动过程中几个重要配置文件的执行过程
Linux 登录后,配置执行顺序为(Debian Serials Capable):/etc/environment -> /etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout关于各个文件的作用,在LinuxSir上找到了以下说明:
2012-10-09 10:35:59
700
原创 思念不会再有相见
昨天广州的雨下得真大,外面的天都黑了。兴庆自已坐的是上午到站的火车。带着一身的疲惫,下午趟在床上思绪万千。一周前的4月10日,也许巧合也是呼唤,本来说是去大夫山的,中途改去东风公园了,在外面吃了中饭老婆说去火车站买件衣服,那天正准备下车就接到老爸的电话,说奶奶过逝了。
2011-04-18 09:43:00
910
原创 MACD金叉买入法
MACD金叉买入法<br /><br /><br /> 一、0轴线下方金叉买入法。<br /><br />MACD两条曲线在0线下方金叉时一般先看作反弹,但有时也会演变成一波强劲的上升行情。<br /><br />究竟在什么情况下MACD在0线下方金叉只是小反弹?在什么情况下MACD在0线下方金叉会走出一波强劲的上升行情?这要结合成交量及其它技术指标综合分析,尤其要结合周线KDJ进行分析。<br /><br />如果MACD在0线下方的金叉是在周线KDJ死叉形成了中期下跌趋势的情况下发生的,
2011-02-25 16:32:00
2013
原创 Page Heap机制
转---Page Heap机制2009-05-05 21:11提示说堆内存被破坏,有时候这样的错误在比较小的程序里面也许不会对整个程序造成破坏,依然能够继续运行,但是千万不要放过,像这种破坏堆内存的隐藏BUG,说不准哪天就会造成整个软件的crash。另外我要提醒的是,release版本也许什么提示都没有,直接放过了,这是因为在debug下,操作系统用DebugWin32Heap来代替正常的heap分配内存空间。在这个堆上的任何操作,debug的堆管理器会检查堆的数据完整性,如果它发现了一个错误,就会报告一个
2011-02-23 11:06:00
1474
转载 VC实现线程池
VC实现线程池 这两天在做关于网络蜘蛛的程序,希望可以通过线程池来提高程序的性能,网上搜索了一下,看到这方面的东西还不少,跟大家分享一下!~有许多应用程序创建的线程花费了大量时间在睡眠状态来等待事件的发生。还有一些线程进入睡眠状态后定期被唤醒以轮询工作方式来改变或者更新状态信息。线程池可以让你更有效地使用线程,它为你的应用程序提供一个由系统管理的工作者线程池。至少会有一个线程来监听放到线程池的所有等待操作,当等待操作完成后,线程池中将会有一个工作者线程来执行相应的回调函数。<br /> 你也可以
2011-02-17 10:07:00
763
原创 海燕
<br /> 转眼又一年逝去了,离开了北方的冬天,南方的春天似乎马上就要来临了,上班也有两日了,心情不是太好,说不清楚一个所以然来,对于人生的追求与理解也似乎有些困惑。自已到底缺失的是什么呢?努力过后得到的是什么呢?下一个目标又是什么呢?交织在心头的可能还不止这些,失落、迷茫。职场的岁月多年了,现在反尔像一张白纸,曾经的信念,勇气在这个形态下也变得苍白无力了,现在仿佛自已就身在狂风暴雨之中,急切的渴望变成一只海燕,飞过这雷明闪电,和密布的乌云,这就需要还是“信念,勇气与坚持”,努力吧!我就是海燕。
2011-02-12 15:46:00
870
1
原创 Android资源
Android程序员入门(中文版)<br />http://download.youkuaiyun.com/source/2942215<br /><br />android开发入门与实践源代码<br />http://download.youkuaiyun.com/source/2942234<br /><br />Android真机开发教程<br />http://download.youkuaiyun.com/source/2942246<br /><br />深入浅出Android<br />http://download.csdn.
2011-02-12 15:02:00
664
转载 搭建 Android 2.2 开发环境
搭建 Android 2.2 开发环境<br />这几天看到了几个不错的Android 上的应用,心痒痒,也想探索一下Android 的世界,于是决心学习一下Android 的开发技术。 :)<br /> <br />接下来当然是搭建Android 的开发环境啦,步骤如下:<br /> <br />1. 安装JDK。注意这里只是安装JRE是不行的,需要安装JDK<br /> <br />笔者是去 http://www.oracle.com/technetwork/java/javase/downloads/
2011-02-12 14:13:00
1874
2
转载 QT中线程调用GUI主线程控件的问题
QT中线程调用GUI主线程控件的问题之前写过一篇文章,是传界面指针到线程中去,从而在线程中操作主界面中控件。<br />今天发现,这种方法是极其错误的,文章我已经删掉,希望没有误人子弟。<br />前面转的两篇文章中对于为什么不能在线程中操纵界面控件指针有了很好的解释。下面在做下解释:<br />尽管QObject是可重入的,但GUI类,特别是QWidget与它的所有子类都是不可重入的。它们仅用于主线程。正如前面提到过 的,QCoreApplication::exec() 也必须从那个线程中被调用。实践上,
2010-10-28 21:16:00
13908
2
转载 QT中线程调用GUI主线程控件的问题
QT中线程调用GUI主线程控件的问题之前写过一篇文章,是传界面指针到线程中去,从而在线程中操作主界面中控件。<br />今天发现,这种方法是极其错误的,文章我已经删掉,希望没有误人子弟。<br />前面转的两篇文章中对于为什么不能在线程中操纵界面控件指针有了很好的解释。下面在做下解释:<br />尽管QObject是可重入的,但GUI类,特别是QWidget与它的所有子类都是不可重入的。它们仅用于主线程。正如前面提到过 的,QCoreApplication::exec() 也必须从那个线程中被调用。实践上,
2010-10-28 21:16:00
2814
原创 qt 线程与ui线程同步
<br />qt 线程与ui线程同步 收藏 <br />本文转自:http://hi.baidu.com/buptyoyo/blog/item/b7b035ef2233a9d8b31cb137.html<br />目前只会一种,采用信号槽机制。<br />通常情况下,信号和槽机制可以同步操作,这就意味着在发射信号的时候,使用直接函数即可以立刻调用连接到一个信号上的多个槽。<br />然而,当连接位于不同线程中的对象时,这一机制就会变得不同步起来,可以通过修改QObject::connect()的第5个可选参
2010-10-28 11:20:00
2516
原创 How do I add capabilities to my executable in qt for symbian?
How do I add capabilities to my executable? <br />Capabilities are requested/declared in the executable's .pro file using the TARGET.CAPABILITY keyword (in Symbian scope). The code fragment below shows how to specify the most common "user" capabilities: sy
2010-10-28 09:14:00
781
转载 怎样在 S60 Qt 程序里调用 Symbian API
怎样在 S60 Qt 程序里调用 Symbian API我在上次 blog里说过,Qt程序启动的时候已经具备了基本的调用 Symbian API的环境,cleanupstack, ActiveScheduler 都有了。<br /><br />所以可以直接包含Symbian的头文件,就像普通Symbian 程序里面那样调用就好了,唯一的问题是怎么包含library.<br />qt是用 pro描述工程文件的,那个mmp文件实际上是qmake通过 pro文件生成的,所以不能在mmp里加 library,这样的
2010-10-28 09:01:00
893
转载 QEvent postEvent/sendEvent
<br />可以自訂事件類型,最簡單的方式,是透過QEvent::Type指定事件類型的常數值,在建構QCustomEvent時作為建構引數並透過postEvent()傳送事件,例如:<br />const QEvent::Type MyEvent = (QEvent::Type) 9393;<br />...<br />QApplication::postEvent(object, new QCustomEvent(MyEvent));<br /><br /><br />自訂事件必須定義事件號碼(Even
2010-10-12 17:23:00
6096
原创 QT多线程异步调用,类似MFC的PostThreadMessage
<br />QT多线程异步调用,类似MFC的PostThreadMessage<br /> <br />在MFC中,每个界面线程都会有一个消息队列,通过函数PostThreadMessage,线程之间可以互发消息,由于Post的方式是非阻塞的,因此系统可以表现出很好的性能。这种消息机制是多线程之间异步调用的极佳方式。<br />笔者最近学习QT4.5.3的时候,想在QT中找到类似于相似的机制,但是暂时没有发现。于是想,没有就创造它。以下描述我如何使QT拥有MFC的消息机制。<br />MFC的消息机制,其实
2010-10-09 17:45:00
4498
原创 QT4中构建多线程的服务器and QT'Socket
QT4中构建多线程的服务器<br />出错和经验2009-04-28 15:43:48阅读12评论0 字号:大中小 订阅<br />QT4中构建多线程的服务器首先说一下对多线程这个名词的理解过程。以前听说过很多次多线程这个词,而且往往与服务器联系起来,因此一直把多线程误解为服务器特有的功能;直到这次课程设计,仔细学习了一下多线程的机制,才知道真正的意思。简单的来说,就是同时有多个线程一起运行,而不同的线程可以执行不同的操作。举个例子,一个图像处理工具,可以用鼠标一边移动图像,一边用快捷键缩放图像,此时,移
2010-10-03 15:53:00
15603
2
转载 Symbian开发教程
<br />Symbian系统已经提供了一套已经定义好的内置的数据类型。为了保证你的代码是编译器无关的,应当使用下面symbian系统提供的数据类型,而不要使用原生数据类型(native types,这里指标准C中的int ,char等)。<br />1. 基本类型 <br />TIntX 和 TUintX (其中X = 8, 16 和 32) 分别用来表示 8位, 16位 和 32位的有符号和无符号的整数。 一般情况下,使用TInt 和TUint就可以了,除非是在考虑代码优化或兼容性的时候,才会用到TIn
2010-09-28 15:06:00
1071
转载 Symbian开发教程
<br />Symbian系统已经提供了一套已经定义好的内置的数据类型。为了保证你的代码是编译器无关的,应当使用下面symbian系统提供的数据类型,而不要使用原生数据类型(native types,这里指标准C中的int ,char等)。<br />1. 基本类型 <br />TIntX 和 TUintX (其中X = 8, 16 和 32) 分别用来表示 8位, 16位 和 32位的有符号和无符号的整数。 一般情况下,使用TInt 和TUint就可以了,除非是在考虑代码优化或兼容性的时候,才会用到TIn
2010-09-28 15:05:00
807
原创 Symbian平台,CEikEdwin文本框研究
<br />自从开始接触Symbian,就觉得Symbian的UI编程非常困难。难在哪呢?因为不知道Symbian控件的运行机制,所以在编程过程中常会出现一些莫名其妙的错误,让人摸不着头脑。 <br /> 也许有人会说,SDK提供了一些UI的例子,可以进行参考。这话倒是不错,但问题是例子中对相应控件的语句的注释不够充分,最后还是被控件的语句弄得云里雾里的,也许写例子的作者自己觉得,在代码之中的逻辑是非常简单的,所以注释就大大的省略了。但对于像小弟这种缺少对Symbian平台内核机制认识的人来说,只
2010-09-27 16:40:00
881
转载 VC 使用OnCtlColor函数来改变控件颜色
在MFC类库提供了CWnd::OnCtlColor函数,在工作框架的子窗口被重画时将调用该成员函数.因此可以重载WM_CTLCOLOR消息的响应函数.此函数的原型:<br /> afx_msg HBRUSH OnCtlColor(CDC *pDC,CWnd *pWnd,UINT nCtlColor); <br /> 参数nCtlColor用于指定控件的类型,可以是:<br /> .CTLCOLOR_BTN
2010-08-25 17:00:00
3068
原创 对右键弹出式菜单进行钩选标记
<br /> CPoint pt = point;<br /> ClientToScreen(&pt);<br /> if ( m_MenuDevice.m_hMenu != NULL)<br /> {<br /> m_pSubMenu = m_MenuDevice.GetSubMenu(5);<br /> if(!IsChanModLinkShow)<br /> {<br /> m_pSubMenu->EnableMenuItem (ID_CHANNEL_MOD, MF_BYCOMMAND |
2010-08-10 10:37:00
703
原创 结构体中用到了CString类型
<br />结构体中用到了CString类型,那么对这个结构体的操作就会受到一些限制:<br />1. 不能使用sizeof()之类的函数<br />2. 不能使用new来分配结构体内存<br />3. 不能把结构体的实例进行拷贝<br /><br />再补充一下,不能用ZeroMemory()来清空操作
2010-07-07 12:13:00
2053
2
原创 std::map
<br /> <br /> <br />1. map中的元素其实就是一个pair.<br />2. map的键一般不能是指针, 比如int*, char*之类的, 会出错. 常用的就用string了,int也行.<br />3. map是个无序的容器, 而vector之类是有序的. 所谓有序无序是指放入的元素并不是按一定顺序放进去的, 而是乱序, 随机存放的(被映射后近似随机存放).所以遍历的时候有些效率差别.<br />4. 判断有没有找到该键的内容可以这样: <br />std::map<std::st
2010-06-23 14:17:00
11133
原创 there is no source code available for the current location 解决方案
there is no source code available for the current location 解决方案<br />1.首先试最常规的方法:Clean and then rebuild solution,但是没有解决<br />2.进入Tools>Options,选择Debugging>General 却掉 Enable address-level debugging 选项,在去掉 Require source files to exactly match the original v
2010-06-17 10:31:00
3870
1
转载 TCP连接探测中的Keepalive 和心跳包
采用TCP连接的C/S模式软件,连接的双方在连接空闲状态时,如果任意一方意外崩溃、当机、网线断开或路由器故障,另一方无法得知TCP连接已经失效,除非继续在此连接上发送数据导致错误返回。很多时候,这不是我们需要的。我们希望服务器端和客户端都能及时有效地检测到连接失效,然后优雅地完成一些清理工作并把错误报告给用户。如何及时有效地检测到一方的非正常断开,一直有两种技术可以运用。一种是由TCP协议层实
2010-04-28 10:20:00
35563
转载 Socket中如何设置连接超时
设置connect的超时很简单,优快云上也有人提到过使用select,但却没有一个令人满意与完整的答案。偶所讲的也正是select函数,此函数集成在winsock1.1中,简单点讲,"作用使那些想避免在套接字调用过程中被锁定的应用程序,采取一种有序的方式,同时对多个套接字进行管理"(《Windows网络编程技术》原话)。使用方法与解释请见《Windows网络编程技术》。 在使用此函数前,需
2010-03-22 22:58:00
2459
转载 linux下socket的connect超时
代码的流程是这样的1 建立一个socket2 设置socket为非阻塞3 connect4 把socket放到一个fd_set中5 select 这个socket,监视可写事件6 判断是否超时或者连接成功 代码如下---------------------------------------------------------------------struct sockaddr_in ser
2010-03-22 21:37:00
4696
转载 IOCP模型总结(转)
IOCP模型总结(转)2009-07-02 09:58IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都是可运行的,Windows内核花费
2010-02-03 10:41:00
812
转载 用多路复用I/O模型实现支持多个客户端的通信服务
引言 多路复用I/O模型是UNIX/LINUX用得的最多的一种I/O模型。这种I/O模型在技术上的实现是包括select()以及FD_XXX的几个宏及常量。在单个进程中支持的客户端数量由FD_SETSIZE决定。Solaris 10和Linux 9.0默认为1024个,Windows 2000是64个。本文用代码给出该I/O模型处理多Client的一种实现。用select开发一个通信服务器
2010-02-03 09:41:00
794
原创 IOCP
IOCP全称I/O Completion Port,中文译为I/O完成端口。IOCP是一个异步I/O的API,它可以高效地将I/O事件通知给应用程序。与使用select()或是其它异步方法不同的是,一个套接字[socket]与一个完成端口关联了起来,然后就可继续进行正常的Winsock操作了。然而,当一个事件发生的时候,此完成端口就将被操作系统加入一个队列中。然后应用程序可以对核心层进行查询以得到
2010-02-02 20:22:00
489
转载 Windows Hook 易核心编程勾子基本理念
前言 以前我非常沉迷入黑客,每每看着高手们发到网上的攻击检测程序心中那个羡慕啊,要是那天我也能写出这样的程序该多好啊可是,我也就只有羡慕的份,谁叫自己不懂英语呢,又没有中文的编程语言直到有一天,我在一家报纸杂志上看到关于易语言的消息. ...... 现在看到论坛上有好多人都埋怨易语言,说这不好,那不好,其实不然易语言还是一个成长中的小树,当然不能和一些早以成长多年的大树相比. 但是有一句俗话不是说
2010-01-29 23:35:00
1158
原创 Cacti spine 的安装
Cacti spine 的安装 最近装了台server用来对网络设备进行准实时监控系统组成 Centos5.2 mysql -4.1.22php-4.6.4apache2.1.2cacti 0.8.7drrdtool 1.0.5 为什么还使用1.0.5呢,主要是这个版本集成了很多库,安装调试方便,而只是生成
2010-01-12 16:36:00
3098
原创 CentOS CACTI,RRDTool安装
安装环境:CentOs4.4依次安装apache,mysql,php,cacti ,rrdtool1.安装apacheQuotation# tar xzvf http-2.2.8.tar.gz# cd http-2.2.8./configure --prefix=/usr/local/apache2 --enable-so --enable-deflate --enable-ca
2010-01-12 15:21:00
2059
原创 PHP安装问题:编译安装php5.2.0时出错解决方案
编译安装php5.2.0时出错解决方案 1.错误信息...................如下checking for mcrypt support... no checking for mhash support... no checking whether to include mime_magic support... no checking for MING support...
2010-01-12 14:53:00
886
原创 sysbench的安装及使用
sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。它主要包括以下几种方式的测试: 1、cpu性能 2、磁盘io性能 3、调度程序性能 4、内存分配及传输速度 5、POSIX线程性能 6、数据库性能(OLTP基准测试) 目前sysbench主要支持
2010-01-12 14:16:00
3719
原创 find / -name "libmysqlclient_r.so.*" -print
find / -name "libmysqlclient_r.so.*" -print
2010-01-12 14:13:00
763
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人