-
Recent Posts
Recent Comments
Mr WordPress on Hello world! 莉 on 荒谬感 carol on 话痨 carol on 5个why carol on 中华文明 Archives
- March 2011
- September 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- August 2009
- July 2009
- June 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- December 2004
Categories
Meta
Monthly Archives: January 2006
捉虫 02
第二天一早,我便拿着软件的源代码上路了。因为我已经找到了重现Bug的的操作步骤,所以不肖吃一张大饼的时间,我就定位到了在PAnalysis\PAnalysisFactory.cpp里面一个delete m_pSomePointer语句:在单步执行过这个语句的时候,错误对话框弹了出来。我心中一阵窃喜,在那个语句后面做了一个记号。也许是m_pSomePointer所指向的对象已经被deletd了?这是很常见的内存访问错误的原因啊。我注释掉了这个delete语句,编译然后运行,程序乖了许多,不再吵闹。试验了几次,都没有什么问题。我想,也许问题真的是出在这里了。 既然定位了问题,现在要做的就是“逆流而上,看看有哪些语句对m_pSomeObject做了操作”。用BCB的全局搜索功能,一阵吱吱嘎嘎的声音过后,源代码里面所有跟m_pSomeObject有关系的语句都被列了出来。逐条看过去,其它地方没有对m_pSomeObject进行delete和赋值的语句。这么会这样? 鼹鼠挖萝卜的故事又上演了一次,不过这次可没有昨天那么幸运。我猜测,也许这个指针被热心的析构函数自动删除了?虽然听起来难以置信,对于一个绝望的人来讲,这多少有些说服力。 我又重新审视PAnalysisFactory.cpp这个文件,它的名字里面有Factory字样,在代码里面有m_pSomeObject = new SomeClass;return m_pSomeObject;字样。一个Factory,新建立对象,然后返回对象的指针,所谓儿大不由娘,指针已经给了别人,命运如何,Factory自己是干涉不了的,所以delete m_pSomeObject字眼,显得有些一厢情愿了。 就像世间大部分事情一样,你以为看到了事情的本质,实际上还差得远。而本质种东西真的存在吗?现实总是能够轻易让我们惊异。我这么说,是因为在我纠缠于应不应该delete的时候,程序又出错了,而且不是在原来出错的位置。
Posted in 计算机与 Internet
2 Comments
捉虫 01
The best way to become acquainted with a subject is to write a book about it. – Benjamin Disraeli 那个时候我还很单纯,每天的功课就是到后山砍砍乌竹,不做功课的时候就为师傅和师兄们准备斋饭,打扫一下院落。晚上无事,就在油灯下看“21天精通捉虫”,“与虫共舞”等教材。 日子过得安宁而平静。 记得第一次下山捉虫,是初秋时分,空气里都是清爽的味道,每天傍晚,西边的天空都满是云彩。 背着简单的装备我就就上路了,那是一个叫做PDF的模块,江湖传闻执行过PDF操作,然后进行统计分析,有可能出现内存访问错误。有人说这个错误经常出现,有人说这个Bug行踪漂浮不定。 “修改Bug,就是定位Bug”,我对自己说,神色坚定。一遍一遍的运行程序,我期待找到Bug重现的归律。大部分时间,执行过PDF和统计分析,程序并不会出错,倒是在程序退出的时候,Windows系统可能会弹出一个“错误汇报”窗口,提示有错误发生。这样,在以后的操作中,每进行一次打开软件,加载数据,PDF,统计,我都会关闭程序,看看是否有错误发生。这样,我提高了Bug重现的频率。 为了提高Bug重现的频率,我还尝试加载不同的数据,后来发现加载比较大的数据,会有一定的效果,那么,我以后就只加载一个特定的比较大的数据(按照“每次只改动一个因素”的原则,我固定了加载的数据,就可以腾出手脚探索其它的方面)。 定位的问题还没有解决,现在的操作步骤还是太多,我要找出重现Bug最简单的步骤。我试着不进行统计操作,Bug仍然会出现,这样我认为Bug存在于PDF模块。然后我在PDF模块里面不进行任何操作,只是打开,然后关闭,Bug仍然存在! 日出日落,我下山已经两天了。我的双眼布满血丝,神色亢奋,可是我在程序外面兜圈子,只能到达这里了。冥冥当中仿佛神在说:“You can get there, but no … Continue reading
Posted in 计算机与 Internet
Leave a comment
在猪窝
VV的家象猪窝,要不是去取硬盘我一定不会去, VV的家象狗窝,要不是他要出差我一定不会去, VV的家象鸡窝,要不是喝功夫茶我一定不会去。 VV有不错的茶具,VV有不错的茶, 我心中的人啊,什么时候再给你泡茶。 (-_-!,民歌版) —————————————————————————- 那个时候,我们都还没有成家,日子过得凌乱。VV常出差,我则忙着应对无聊,平时没有什么言语。 那天VV说要走了,我一时没觉得怎样,只是说,把硬盘还我。 VV说,还有一直没有喝的功夫茶。我点头。 他的宿舍仿佛多年不住人的样子,东西散落了一地,到处都是灰尘。他默默的准备茶具,泡茶,实际上是一套精致的茶具,不知道他在哪里弄来的。没有桌子,只能放在地上。我们喝几口茶,吃一口大饼,一边看着电视。VV看着电视,不时吃吃的笑一下,而我,只看到人影晃动。 又起风了,跟那晚一样。那天一起喝过茶后,我再也没有见过VV,只是偶尔从朋友口里听到他的消息。 在失眠的时候,我偶尔会想,若当时我能挽留他一下,又会怎样呢? (-_-!! 回首青涩时代版)
Posted in Uncategorized
1 Comment
难翻译的
Historically, the claim of consensus has been the first refuge of scoundrels; it is a way to avoid debate by claiming that the matter is already settled. – Michael Crichton 历来,常识是一个避难所,让我们免受无赖的骚扰;把一件事情说成已经解决,我们就可以避免继续争辩。
Posted in Quotes of "Quotes of the Day"
Leave a comment
聪明就是把长的说成短的,有的时候相反也成立
Management is doing things right; leadership is doing the right things. – Peter Drucker 管理是正确的做事情,领导是做正确的事情。 Classical music is the kind we keep thinking will turn into a tune. – Kin Hubbard 古典音乐是这样一种音乐,我们总觉得他们都是一个调调。
Posted in Quotes of "Quotes of the Day"
Leave a comment
过度竞争
百草园门口有一长排卖DVD的,一般天黑出来。摊主大都皮肤黝黑,民工样子。 碟无论是什么包装,质量,一律都是4块钱。而关内一般都是6块。 那里是过度竞争的一个例子。碟的价格上不去,碟的质量也上不去,一般质量好的碟,比如“丽晶”,进价都会贵一些,当然没有人愿意卖了。DVD9就更没有可能了。 让我很不理解的是偌大一个华为公司,再加上新天下,也有几万人了,竟然连一个卖DVD9的摊位也支撑不起来。相反,那些Mpeg4格式压缩的,或者枪版倒是很受欢迎。 关内打击盗版有几个月了,让我痛苦不已,现在一张“丽晶”的DVD,也要7、8块钱了。山高皇帝远的关外似乎没有人希望接手这个商机,嘿嘿。 ============================================= 不随波逐流也难,前些天买了一套“越狱(Prison break)”,电视剧才演到13集,号称第一季的碟已经出来了,虽然我知道是TVRip,让我诧异的是Rip的效果如此之差,网上已经有了HDTVRip了啊。照着刻一遍还有什么难度吗? 让我不禁又想起了先人说过的一句话:“等是硬道理。” P.S. Prison Break是一个可以跟24(反恐24小时)媲美的剧集,不过为了给24第五季让路,演到13集后会停播半年。
Posted in 娱乐
Leave a comment
新年愿望
(过新年时写的了,在GF的计算机上发现,贴上来。) 早晨起来,头疼好些了。 然后想起,是新年了。 不免要回首和展望一下。如果不说回首一片狼藉,展望一片迷茫,那么的悲惨,也不见得有什么可以值得一说。 也许更加耐心了一些,也不再十分的偏执,代价是丧失了激情,平静的接受现实。 对技术的信仰消磨了一些,读书取乐的时间增加了。 未来?生活得有乐趣一点吧。
Posted in Uncategorized
1 Comment
所谓冷峻的人生
No one really listens to anyone else, and if you try it for a while you’ll see why. Mignon McLaughlin 人们从不真正倾听,如果你不同意,试试看。
Posted in Quotes of "Quotes of the Day"
Leave a comment
群众有意见了
When I was a boy I was told that anybody could become President. Now I’m beginning to believe it. – Clarence Darrow 在我还是一个孩子的时候,他们说谁都有可能当总统,现在我开始相信了。
Posted in Quotes of "Quotes of the Day"
Leave a comment
这次都是严肃话题
Any event, once it has occurred, can be made to appear inevitable by a competent historian. Lee Simonson 不管是什么事情,只要是发生了,都能被那班历史学家论证成为必然。 Politics is not the art of the possible. It consists in choosing between the disastrous and the unpalatable. … Continue reading
Posted in Quotes of "Quotes of the Day"
1 Comment