2009年4月29日

Java 性能优化[3]:垃圾回收(GC)

  上次的帖子讲到引用类型和基本类型由于内存分配上的差异导致的性能问题。那么今天就来聊一下和内存释放(主要是 GC)有关的话题。

2009年4月24日

开源实践:SQLite 的使用场景

  上次针对 SQLite 进行了扫盲,之后有同学在评论里问俺:如何在项目中使用它?今天咱来聊一下这个话题。

2009年4月21日

Oracle 收购 SUN,会有啥影响?

  昨天惊悉 Sun(升阳)被 Oracle(甲骨文)买了,埃里森真是大手笔啊。IT 业界出了这么大的事儿,如果不趁机八卦一下,似乎有点说不过去啊。下面就从几个方面聊一下俺的愚见。

2009年4月18日

C/C++ 中一个简单的 enum 手法(idiom)

★引子


  今天写程序的时候,又用到这个 idiom 了,于是顺便贴出来。这个 idiom 蛮简单的,估计很多人都用过。今天主要是贴出来给新手参考(老手们就甭费时看此帖了)。

2009年4月16日

架构设计:生产者/消费者模式[4]:双缓冲区

  “双缓冲区”是一个应用很广的手法。该手法用得最多的地方想必是屏幕绘制相关的领域(主要是为了减少屏幕闪烁)。另外,在设备驱动和工控方面,双缓冲也经常被使用。不过今天要聊的,并不是针对上述的某个具体领域,而是侧重于并发方面的同步/互斥开销。另外提醒一下,双缓冲方式和前面提到的队列缓冲、环形缓冲是可以结合使用滴。

2009年4月13日

招聘的误区

  上次在“二八原理系列”中谈到了“如何找到优秀的开发人员”。当时主要是结合“优秀人员”的稀缺性来谈优秀人员的招聘问题。今天打算换一个角度,抨击一下当前很多软件公司在招聘方面的弊端。

2009年4月10日

C++ 多线程调试和测试的注意事项

  在上次的帖子聊了 C++ 多线程的跨平台问题,后来感觉意犹未尽。今天顺便说一下开发C++多线程应用程序时,有关调试和测试的一些注意事项。下面这些注意事项主要是针对C++,不过有些对于其它的语言也适用。

2009年4月5日

微软需要 Twitter 来对抗 Google

  最近小道消息疯传 Google 要收购 Twitter,闹得IT界沸沸扬扬。昨天 TopLanguage 论坛上也有同学讨论此话题(请看“这里”),我也在里面掺和了一下,发表几点随想。今天想想不过瘾,就把昨天发的评论再继续发散一下。

2009年4月3日

C++ 的可移植性和跨平台开发[6]:多线程

  最近一个多月写的帖子比较杂,导致本系列又好久没更新了。结果又有网友在评论中催我了,搞得我有点囧。今天赶紧把多线程篇补上。上次聊操作系统的时候,由于和 OS 有关的话题比较琐碎,杂七杂八说了一大堆。当时一看篇幅有点长,就把多进程和多线程的部分给留到后面了。

2009年4月1日

架构设计:生产者/消费者模式[3]:环形缓冲区

  前一个帖子提及了队列缓冲区可能存在的性能问题及解决方法:环形缓冲区。今天就专门来描述一下这个话题。
  为了防止有人给咱扣上“过度设计”的大帽子,事先声明一下:只有当存储空间的分配/释放非常【频繁】并且确实产生了【明显】的影响,你才应该考虑环形缓冲区的使用。否则的话,还是老老实实用最基本、最简单的队列缓冲区吧。还有一点需要说明一下:本文所提及的“存储空间”,不仅包括内存,还可能包括诸如硬盘之类的存储介质。