果实:枝头的青涩
lin_style
俺是农民。
展开
-
随便聊聊找BUG的方法
[color=blue]一、现场环境证据收集[/color] 将一个bug比喻成一次案件。对案件进行分析时,可以从邻居口中得到线索,也可以从现场找到突破口。那么我更喜欢从邻居口中用较少的次数收集到我所需要的信息后,将更多的时间花费在从现场找到蛛丝马迹。找bug时也是如此,假设你的程序打印出人员的排序情况不一致,不应该马上就去查找你的排序代码。更应该从“现场”周围来收集更多情况:比...2008-07-15 16:36:38 · 135 阅读 · 0 评论 -
IOCP分层二,一个复杂度为1的对象池定位
前篇IOCP的分层一 在对象池的使用上,我采用了一前写的一个数组模拟链表的结构,并且做了修改。最大的发现就是,STL的偏特化特性导致空间不能配置的去NEW它,而VECTOR的标准结构里是将这一块隐藏起来的,用户只要不停的PUSH。不过解决的方法当然有,代码修改后丑陋了点:ListOfArray.h的代码#pragma once#include <assert...2010-04-16 11:42:34 · 78 阅读 · 0 评论 -
缓存的力量,windows下的slub分配器
上张图先:该CPU L2=3MB首先谈谈对象分配池.不管是内存池也好,对象池也好,首要的速度就是要快。可能有人说内存池为了碎片问题,那减轻碎片负担是不是也是为了速度快呢? 影响速度首先要从2个角度考虑,一个是机器的硬件特性,其次是缓存的命中率。硬件特性包括了对各种不同大小字段的读取,而缓存命中率在大内存的时候更显得犹为重要(因为内存没有硬盘的I/O瓶颈一说)。一会会结合数据图一一指...2010-07-13 14:58:02 · 101 阅读 · 0 评论 -
~也来共享共享我的程序学习方法~
一家之言,如果你觉得天天看书无效、纠结语法的时候可以试试我的方法。 当我初学C/C++的时候,按照网络上的方式,无一例外的进行一系列的图书洗礼,什么C++ PRIMER,effective。。一拉下来。每次都以终于好不容易熬完一本书为荣,这真是太紧了,当然,不是我太大(韩寒语)。 过去的一年,我看了很多领域的杂书,包括经济的,推理的,记录的。尤其看到“...2010-03-03 22:23:44 · 83 阅读 · 0 评论 -
2010 ECUG大会,第一天记录。
ECUG:http://ecug.org/2010:home 简单的记录,里面的很多点扯出来都能扯一篇出来。 第一日9点总算及时赶到,签到等扒拉扒拉。以下记录分段式,按笔记本上的稍做整理。不过,去这种大会前,能有20%值得听的就很满足了。这个是前提第一场 生不逢时的 WEB OS大概说了之所以10年发展的WEB OS失败原因有终端不统一,用户体不对(连...2010-10-16 22:29:50 · 135 阅读 · 0 评论 -
2010 ECUG大会,第二天记录。
第二天早上爬了几次才起来。一路小跑,买完包子后在车站等车。今天北京突然降温,全身冰冷,也就口里的包子有点热气。车来得还算快,几分钟后,一辆公交夹着滚滚灰尘而来。冰冷的天气,一大早上就滚滚的灰尘,赶紧封好包子口,合上嘴巴,闭着眼睛往上跳吧。。。第一场 nginx的应用是来自淘宝的一位技术专家。所表现出来的技术非常浓厚。nginx我不是太熟悉,一些东西记录得可能有误。...2010-10-17 21:35:31 · 123 阅读 · 0 评论 -
Google Protocol Buffer“序列化.写入”代码流程一点分析
(为啥在可视化编辑里的字都好好的,出来后就忽大忽小的,尤其在代码和文字混排的时候) 本篇主要是对“序列化.写入”所做的代码跟踪,会稍微提到点其他的。采取的例子是自带的addressbook对我目前而言,主要关心这么几个点,对字段的管理,对协议的管理。其中在一些代码分析的思路上是这样的:因为是对这套代码的整个需求不是太了解,所以采取的方式是,会先分析各个模块是干吗的,然后根据它们...2011-06-09 23:34:44 · 689 阅读 · 0 评论 -
当年朦胧的程序员我,在游戏上对聊天玩法新的包装想法。。
下班回家的路上,在滑腻的南方水汽中怎么觉得今晚的树梢特别朦胧。想起当年的我也很朦胧...转入正题:从历代的网游观察,聊天功能随着早期的简单功能到现在的功能丰富化,可以分频道,分帮派,带超链接,发喇叭等等,但是其中的本质功能并没有多大的创新。除去交流外,聊天还有两个类似SNS特性的东西一、 影响关系广泛。你说一句话,不管认识的不认识的,都会收到二、 即时性高。一方发出消息,另一...2011-10-13 22:48:21 · 119 阅读 · 0 评论 -
看事儿网:下一代社交内容分析和demo展示
兄弟我最近用业余时间学了点WEB的东西,做了个自己设想中的下一代社交内容网络DEMO,看事儿网 www.kanshier.com 没希望做多大,这里谈谈这段时间的收获。主要包括社交内容的分析,网站UI的分析,竞争对手的分析,和书籍推荐。 开头的自我吹牛我觉得自己在几个社交的预感上还是准确的:在08年的时候,就觉得一定会出现微信这样的东西,只是技术局限,觉得只能靠GPS定位有许多局...2012-10-31 11:26:25 · 218 阅读 · 0 评论 -
总结第一个项目"种粉网"的失败
第一个项目“种粉网” www.zhongfans.com 失败了,这里总结下。这是今年3月份萌生的一个想法,看到新浪微博上大V的传播的速度,看到很多草根发出声音,就得不到转发,于是就想解决草根粉丝传播力度的问题。首先设定了个规则,用户可以在这个平台上主动的增加(抓取)粉丝,但是每天都有个上限;发消息的时候需要选择消耗多少粉丝,把消息发送给他们,这些粉丝就没了,需要重新累积。完...2012-08-07 10:45:54 · 111 阅读 · 0 评论 -
IOCP的分层一
写网络代码时,总希望把逻辑和网络层分开。而在IOCP这样的高并发连接时,Get中返回所带的Key性价比让人垂涎不止。可以把逻辑和网络当成一个对象通过KEY返回,也可以通过一个网络ID,来查找逻辑对象。来讨论下前者: IOCP_KEY={NetObject, LogicObject}; //暂时结合在一起 当Accept时,申明出一个IOCP_KEY进行维护。Ge...2010-04-13 16:09:53 · 80 阅读 · 0 评论 -
我怎么就想个留个电话,该留个邮箱啊。
跟客户交流完问题后,一些问题还没得到解决。客户拿了张纸叫我把一些没解决的问题 记录下来。我很认真的写了几点,然后说了声谢谢就走了。后来想想,是不是电话没留个;不过又觉得已经跟客户联多次了,电话应该知道。。几天后。。一位同事说,该客户发了份资料到他邮箱。(就是我上次调研的) 真是懊恼啊,我应该留个邮箱给他的,留电话干吗。。。。。。客户怎么爽怎么依他。。...2009-01-06 11:18:39 · 102 阅读 · 0 评论 -
说出“对不起”的感觉真好
早上,在聚精会神看书中。一同事突然问我:“XX,关于。。。。”。我当时半开玩笑的说,“当时不是已经发在群里了嘛”。然后他略显尴尬的说“当时没注意看”。回答完这个,他拿起手中电话,开始跟另一头的客户解释。我一下子变得很不自在。因为我当时不知道他在和客户保持通话中,还略显的挖苦他。先撇开是否回答的应该,光光凭借这种大局的重要性,就是我错了。。。但是当时临近吃午饭,我诚心的给...2008-12-30 21:38:10 · 74 阅读 · 0 评论 -
把sprintf进行改造,提升将近4倍的拷贝速度
[code="java"]inline void CollectChar(char* _comSQL, const char *_pcAccounts, const char *_pcIP){ /* char buff[128]; _comSQL+=strlen(_comSQL); memset(buff, 0, sizeof(buff)); sprintf(buff,...2008-07-18 17:35:35 · 1619 阅读 · 0 评论 -
初识接口编程的一个好处
突然用这个方法的起因很简单,偷懒,方便。起先,我做的一些工作变动性不是很大,一个函数功能的代码比较通过用,也很少接触什么类继承之类的东西。你知道,一些底层的结构不会今天是short明天又变long,应用程序传给我的数据经过层层剥离,最终都还原成了最简单的数据模式。不过,这东西还是碰上了。开门见山直接如下:[img]http://lin-style.iteye.com/upload/pict...2008-08-11 11:40:29 · 71 阅读 · 0 评论 -
一篇以前写过的文章:C++之一个编程入门者的感悟(能引起你的共鸣,是我最值得的事) ...
今日再看到这篇文章实在是感慨。。原因说起来也好笑。CSDN进行了一个C++回顾,在下这篇文章荣幸被登。因为以前留了联系方式在里面,QQ老是被加人。现已经和CSDN交涉,希望把联系方式去掉,保留文章即可,也算是自己的一种肯定。断断续续的学习C++也有三两个月了,(2006年8月下旬起)。很感谢C++,可以说它是 一种催化剂,让我自身的修养和人生观都有很大的提高。(当然...2009-03-11 13:29:24 · 93 阅读 · 0 评论 -
内网呆了一周,一些奇怪的问题记录下。。
内网呆了一周,一些奇怪的问题记录下。。这个是很久以前的协议是SNMP,用户经常报告说程序把把机器端口搞关闭了。抓下包,发现有时候因为时延没设置好,一下发了两个请求包。在这间隔,一个session已经关闭,返回对方一条ICMP不可达端口错误。 今天偶尔看资料才知道,一些XTI接口对这条信息有反映,导致端口暂时的不可用用原始套接字开发SYN扫描,在recvfrom时我没...2008-09-05 22:17:41 · 79 阅读 · 0 评论 -
万恶的继承
(1)关于人物继承:class attribute;class fight:attribute;class mrole:fightclass 怪物:fight 其中人物和怪物继承的属性一样。在一次扩充中,需要加入根据属性点来提升攻击效果比例的各种药剂。而一些攻击函数的触发都放在fight类里。这也是无可非议的。 但是怎样才能让这些函数知道人物的药剂状态呢?我给figh...2009-10-28 23:36:51 · 81 阅读 · 0 评论 -
(00XX系列)搞搞有限状态机
需要修改游戏中的一些AI,自己做了个小模型。一些头/源文件随便塞了。严格来说FSM不算是一个AI的思路。 对于一个FSM,基本的要有如下的东西:一些若干的状态指示变量;一张状态转换表;一个根据状态转换表进行描述行为的函数。如果还有其他需求也是根据以上进行增加额外的数据。比如游戏的一些NPC通常有不同的AI选择,但是行为表是一样的,所以就得增加一张根据NPC查询...2009-11-12 17:02:18 · 3847 阅读 · 0 评论 -
今日反思:对简单程序的不重视
一个很简单的UDP/TCP/服务器连接。不怎么重视,很随意的直接开始编码,并想着用新的思路和方法。结果代码是写很快,但是收发时候的数据怎么都不对。查了一整天,总结如下:1、对进程规划不完全。简单一个进程做完的事非得分好几个进程。当然这不能全算是我的错,一些设计被强制改了2、调试信息打印不完全。为了省事简简单单的输出几个变量3、事先的伪码或者流程图没画好,搞到最后查bug晕头转向...2008-11-24 23:04:47 · 90 阅读 · 0 评论 -
就算说话很随便,关系再好的人,也要注意用词用语
如下:中午,组长因为少了个椅子,来我旁边搬走张椅子(我是用来放包和衣服的)。笑眯眯的说“借我一下。”。我当然是同意的,因为平时和他玩笑开惯了,我边看屏幕边随口说了句“妈的,你这人。。”,最后还带了句组内流行损人的话。说完后觉得特后悔。一个午休都没心思。晚上回来类似,在网上发帖,说了一些说者无心的话。后来被一个学姐提醒,赶紧结了帖子。以后一定要注意了。...2008-12-03 22:54:41 · 116 阅读 · 0 评论 -
观察和留意细节
周五下午回公司开会。在会议室门外,已经坐着几个同组的同事。后到的我问他们,怎么不进去啊。一个同事回答说,里面好象有人。(门是关着的)我 “哦”了一声,就被资源组的同事叫过去拿东西了。。。。。若干时间后资源组同事过来说:都到了吧,然后就打开会议室的门。哗然啊,居然没人。其实有个地方就可以观察到会议室是否有人在用,那就是控制会议室灯的开关。在门口...2008-12-06 12:33:16 · 93 阅读 · 0 评论 -
0到新浪微博综搜榜第一
0到新浪微博综搜榜第一 原谅我标题了一点,这两天的粉丝狂涨好几万,被网易媒体转载报道,圣诞当天在新浪微博综合热搜榜第二,第二天第一,时事排行榜牢据第一。但我保证,这篇文章(包括引用的数据)在这些没发生之前就写完了,也相信自己做的是对的,所以绝对的心平气和,绝对的自信牌干货。(这段话是新加的) 来看看一个草根少年如何不买粉、不营销、不炒作、不不要脸,慢慢挖掘的过程。内容较多...2012-12-27 09:38:06 · 339 阅读 · 0 评论