存档

2009年8月 的存档

TinyXml使用与剖析

2009年8月15日 没有评论

前两天在做一个xml格式转换的东东,用到了tinyxml。因为之前没有用过tinyxml,所以先下载它的源码,学习一下,然后再完成工作。现在要做的事情做完了,觉得有必要把自己学习tinyxml过程中的一些收获记录一下,分享一下。

1. tinyxml是什么?

TinyXML is a simple, small, C++ XML parser that can be easily
integrated into other programs.

TinyXML is a simple, small, C++ XML parser that can be easily  integrated into other programs. (TinyXML是一个简单的,轻量级的,由C++实现的XML文档的解析器,它可以被其它程序方便地集成进去使用) 阅读全文…

分类: 程序人生 标签: , ,

谈”句柄泄漏”

2009年8月5日 没有评论

“泄漏”是我们写程序的人老生常谈的一个话题。最为常见的就是内存泄漏(memory leak),本文介绍一种新的泄漏—句柄泄漏(handle leak)。在windows系统的程序中,我们经常会遇到句柄这个词,而且windows也抽象出了一种句柄类型HANDLE。在unix系统的系统中,句柄这个词用的不是很多。我们用另一个词描述它—文件描述符(file descriptior)。这里的文件是指广义的文件,因为在unix系统中,everything is a file。总的说来,句柄是指操作系统给我们的应用程序的进程分配的,用来标识某种资源的符号。这里的资源,可以是狭义的文件,可以是socket连接,也可以是一个对象。 阅读全文…

linux下进程名和进程id的转换

2009年8月4日 没有评论

1.由进程名得到进程id:  pidof  xx , 其中xx是进程名

2.由进程id得到进程名: readlink /proc/xxx/exe,其中xxx是进程的id

3.如果是shell程序,因为shell的进程名是相应的shell名,所以不能直接根据shell脚本的名字来获取其进程id,可以由以下两种方法(以sh为例):

(1)通过pidof sh得到所有的sh进程的pid的集合,然后再通过ps aux|grep xxx.sh得到的进程的id,来和前面得到的id进行匹配,如果匹配到的话,就说明匹配的id是该脚本的进程id.

(2)pid=`ps gaux | grep xxx.sh | grep -v grep | awk ‘{print $2}’`

分类: 程序人生 标签: ,

robots.txt协议中User-agent的匹配

2009年8月3日 没有评论

之前写过一篇关于robots.txt协议(http://hi.baidu.com/wuzsh/blog/item/cef1fc03f6ff54723912bbbe.html)的文章 ,今天收到站长投诉,说是我们的spider不遵守robots.txt协议。把它们的robots.txt下下来测试一下,果然,以前的robots.txt程序有个bug。主要是没把robots.txt中user-agent的匹配弄好,于是再翻出来看看,下面是原文:(摘自http://www.robotstxt.org/norobots-rfc.txt阅读全文…