自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 关于EPOLLOUT

EPOLLOUT只有在缓冲区已经满了,不可以发送了,过了一会儿缓冲区中有空间了,就会触发EPOLLOUT,而且只触发一次

2011-12-13 17:41:00 751

原创 nginx网络层分析

近来有空阅读了一下高性能开源http服务器nginx的源代码,因为整个代码有接近10w行,所以只能先分析一下我比较关心的网络层的连接处理。首先从主函数main进去,前面的配置初始化先略过,看到如下代码: if (ngx_process == NGX_PROCESS_SINGLE) { ngx_single_process_cycle(cycle);

2011-10-24 20:25:28 2249

原创 ubuntu利用samba映射磁盘到windows

1、首先在ubuntu安装好samba,具体步骤为:安装samba:sudo apt-get install samba安装smbclient:sudo apt-get install 安装smbfs:sudo apt-get smbfs2、修

2011-09-08 19:24:47 2215

原创 linux 后台运行程序

./xxx &

2011-09-06 14:55:04 483

原创 linux基本的查找文件

sudo find / -name "event.h"

2011-09-06 11:14:40 443

原创 一个ftp下载的shell脚本

ftp -v -n 192.168.161.31<<EOFuser ftp ftpbinarycd serverlcd project/serverpromptmget *closebyeEOF

2011-08-15 20:02:15 444

原创 windows判断本机网络连接的方法

InternetGetConnectedState

2011-08-05 14:18:22 967

原创 tcp长连接判断对方断开的方法

1、心跳包2、keepalive检测,对于设置了keepalive来说,当tcp检测到对端socket不再可用时(不能发出探测包,或探测包没有收到ACK的响应包),select会返回socket可读,并且在recv时返回-1,同时置上errno为ETIMEDOUT。此时TCP

2011-08-01 19:52:12 7931

原创 多叉树的递归和非递归遍历

void travel(Node *pNode){ stack stack; stack.push(pNode); Node *lpNode; while(!stack.empty()) { lpNode = stack.top();

2011-07-19 20:54:43 15362 2

原创 windows程序崩溃钱的处理

遇到意外情况的宕机,为了友好地提示用户,并且有机会上传数据找出bug的原因,可以使用如下函数SetUnhandledExceptionFilter

2011-07-18 19:39:31 583

原创 VC中添加库文件和头文件

tools->options->Projects and Solutions->VC++Directories然后在show directories for选择添加。

2011-07-08 12:49:56 654

原创 windows下c连接mysql

1、在vc工程中加入C:\Program Files\MySQL\MySQL Server 5.5\include头文件的路径,C:\Program Files\MySQL\MySQL Server 5.5\lib和静态库的路径2、代码#include #include #inc

2011-07-08 12:37:03 689

原创 ubuntu 安装和配置mysql

1、安装,sudo apt-get install mysql-server输入超级用户密码,就会自动安装了,中间会询问root用户的密码。2、给用户设置权限和密码,如 grant select,insert,update,delete on *.* to user1@local

2011-07-07 20:10:54 484

原创 windows环境下配置apache svn服务器

1、安装apache服务器,server的url直接输入本机的ip地址,安装完毕后代开Apache2.2\conf\httpd.conf,listent改为8088,在浏览器输入http://localhost:8088/测试,显示It works!表明安装成

2011-07-06 20:15:07 691

原创 visual studio 运行命令行参数

Project->xxx Properties打开对话框 Configuration Properties->Debugging  Command arguments输入参数

2011-06-22 19:36:00 1308

原创 一道传说是智力170的题目

今日一同事有一道做出来有智力170的题目,反正得闲没事就做做啦,结果30分钟就给我解决了,囧!  题目:有10个球,其中一个的质量与其他九个是不同的(不知道是重还是轻),要求用天枰称3次,找到质量不同的一个球。 我的解法:1、把10个球分成3份,3:3:4,标记为A、B、C。2、把两份3个球的A、B放到天枰两边称,如果重量相等,则不同重量的一个在4个的那份C,显然再称两

2011-06-17 21:40:00 782

原创 解决visual studio有时无法设置断点的问题

Tools->Options,选择dubegging->General,把一项Require source files to exactly match the original version的打钩去掉

2011-06-03 15:05:00 2676

原创 c函数指针和c++类成员函数指针

<br /> c的函数指针还是很简单的,很好用的,直接看代码吧<br />#include <stdio.h>void cFunction(){ printf("cFunction;/n");}//c函数int main(void){ //定义新类型 CFunc typedef void( *CFunc)(); //把函数地址进行赋值 CFunc func = &cFunction; //the same as cFunc

2011-04-21 19:18:00 568

原创 xml导入到mysql的小问题

<br />    是一个小问题,却搞了半天,因为在游戏开发中需要先根据策划需求建好数据表,然后导出成excelXml给策划填写和更改,然后再把excelXml转换成csv格式,最后用mysql导入csv的数据,谁知搞了几次都不成功,中文的东西都没导入进去,搞来搞去最后发现用UE把csv文件转换成utf8就ok了,特此记下!!

2010-09-16 19:26:00 841

原创 指向指针的指针 **

    c/c++的指针是难点,很多地方都有提及,就不一一概述了。这里说说指向指针的指针的作用。1、指向一种自定义类型。可能我是从高级语言(JAVA、python等)过来的,所以喜欢这样描述,例如认为int、long等是值类型,struct xx的为自定义类型。所以当定义一指向结构体的指针 struct xx *sp时,又需要有个变量能指向不同的像这样的指针时就用指针的指针吧,如void **

2010-04-20 19:00:00 551

原创 windows下的第一个makefile程序

       今天比较闲,研究了一下Makefile,这是自己第一次写Makefile,虽然一直听说其大名,但都是流于理论与书籍。今天决定自己实践一次,好,废话少说。1、先写一个hello world的main.c#include int main(){     printf("hello world/n");    getch();} 2、下载并安装win

2010-03-22 19:34:00 710

转载 加快程序运行速度的技巧

      加快程序运行速度的技巧  通常影响程序运行速度的地方,都是在执行次数最多的地方。比如显示一张800*600的256色图形,如果在设置调色板时浪费了0.001秒,那么对整个程序不

2009-12-10 11:03:00 764

原创 C/C++拾遗

    在使用c/c++时有许多细节和技巧需要注意的,但很多时候时间一长不用就忘掉了,故一点一滴记录下来,以作备忘!1、函数调用     函数调用的参数不改变参数内容的应在参数前加上const,如void function(const char * ServerName),防止误修改。     但函数参数是结构体或者对象时,传入的参数应为指针或者引用,如void function(st

2009-12-08 18:39:00 545

原创 游戏的那些事儿

  不知不觉又到12月了。近期写代码少了很多,多了时间去看书学习和打游戏,这个过程想了很多也思考了很多,今天就说说近来我的所思和所想吧。1、从war3看寻路算法  这个是我昨天想到的。我们打dota的时候,在追杀一个红血的英雄的时候,应该一下一下地点追杀的路径到直线距离的时候再A。以前我总是A对方红血的英雄以致常常以追杀失败而告终,现在学乖了,知道如何去杀,命中率自然大大提高了。这里不是想说明

2009-12-07 19:43:00 864

原创 人工神经网络

人工神经网咯的类型有很多,以下对几个普遍的分类进行介绍:首先介绍一下神经网络的主要学习规则有1、HEBB学习规则2、离散感知器学习规则3、连续感知器学习规则4、最小均方学习规则5、相关学习规则6、胜者为王学习规则7、外星学习规则 一、感知器神经网络     最有代表性的是BP神经网络,因为实在太熟悉就不作介绍了! 二、自组织竞争神经网络   

2009-06-09 10:37:00 1394

原创 遗传算法

一、基本遗传算法的流程如下:不断循环,直到寻找出一个解:1、检查每个染色体,看它解决问题的性能如何,并相应地为它分配一个适应性分数。2、从当前群体选出2个成员。选出的概率正比于染色体的适应性,适应性愈高,被选中的概率也愈大。常用的方法是赌轮选择法(roulette wheel selection)3、按照预先设定的杂交率(crossover rate)(一般取0.7),从每个选中染

2009-06-09 08:20:00 862

原创 软件低效的根源

         在最高层次中,软件的效率取决于两个主要因素的效率:1、设计效率  这与程序的高层设计有关。解决这一层次的性能问题需要理解程序的大体构造。在相当大的范围内,这是与语言无关的。任何编码效率都无法掩盖低劣的设计2、编码效率  中、小型的实现问题属于这种情况。解决这一类性能问题通常做局部修改。例如,要把常量表达式放在循环的外面以防止多余的计算。      还可以把这个高层次划

2009-05-26 08:40:00 565

原创 c++风格的类型转换

         标准c++提倡使用类型转换操作符类替换旧风格(如 int i=(int)100.1)的强制类型转换。其语法格式如下:      转换操作符(待转换对象)      其中转换操作符可以是以下几种:  1、动态类型转换dynamic_cast  2、静态类型转换static_cast  3、再解释类型转换reinterpret_cast  4、常类型转换con

2009-05-25 11:53:00 482

原创 c++标准库的组成

      c++标准库实际包含一堆头文件(.h)、实现文件(.cpp)以及目标文件(.lib),其中包含的内容如下:  1、函数  2、常量  3、宏  4、类:公用类的定义(如:string)  5、对象:公用对象的定义(如:cout)  6、模板      不同的c++库完成对不同操作的封装,一般认为c++标准库由以下部分组成:  1、字符串  2、输入输

2009-05-25 11:42:00 683

原创 java中的clone机制

为什么要使用clone?在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值,也就是说,A与B是两个独立的对象,但B的初始值是由A对象确定的。在这种情况下常常使用clone,但解决上述问题方法很多,如先new一个类,然后把原始对象中的信息赋到新对象中,那为什么需要clone呢

2008-02-25 20:21:00 1028

原创 java中的“值传递”和“引用传递”

 和大多数流行的编程语言一样,函数体的传入参数分为“值传递”和“引用传递”两种。(1)“值传递”传入的参数是java语言中定义的基本数据类型(如int,char,double等)(2)“引用传递”传入的参数在java则是对象的一个"引用",这个"引用"的概念同C语言中的指针引用是一样的。那么两者之间到底有何异同呢?       “值传递”传入的参数在函数体内部变成了局部变量,这个局

2008-02-16 15:29:00 815

原创 java中的"=="与"equals"

        以前学习java中一直没真正搞懂"=="与"equals"的区别,总以为"=="是判断内存地址是否相同;"equals"是判断值是否相同。其实不然。        在java语言中,判断两个对象引用变量是否相等,有两种比较方式(1)比较两个变量所引用的对象的内存地址是否相等,"=="就是比较内存地址,另外,Object类中定义的equals(Object o)方法,也是按内

2008-02-14 14:56:00 1320

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除