摘要: 1.2 socket编程 socket编程在通信系统设计中有很重要的地位,Jabberd服务器也是如此。因此在度Jabberd源码过程中要了解socket编程的知识。 1.2.1 select函数 为了实现单线程驱动,必须借助系统函数select或poll。select或poll可同时侦听多个socket上的事件,当某个socket上有事件发生时select函数就会返回,这时就可以对这个事件处理。这样就把一个同步阻塞的操作变成了异步操作,使单线程的事件驱动成为可能。 阅读全文
posted @ 2009-04-12 16:02 csifreshman 阅读(120) 评论(0) 推荐(0)
摘要: 1.1 回调函数(CallBack Function) 所谓回调函数,本质就是函数指针。所以先要搞清楚函数指针的问题。 1.1.1 函数指针 一个函数占用一段连续内存。当掉用一个函数,实际上是跳转到函数入口地址,执行函数体,完成后返回。函数的入口地址是由函数名来标记的。 函数指针是一种特殊类型的指针,它指向一个函数的入口地址。 声明函数指针的语法形式为: 类型 (*函数指针名)(形参列表) 阅读全文
posted @ 2009-04-12 15:12 csifreshman 阅读(109) 评论(0) 推荐(0)