mongoose
文章平均质量分 64
huolianglee
这个作者很懒,什么都没留下…
展开
-
mongoose之get_option_index函数解析
get_option_index函数原型如下static int get_option_index(const char *name);参数:一个指向名字的指针,该名字对应一个值。返回值:若找到该选项则返回该选项在选项数组中的对应行数,否则返回-1。该函数用于从一个存放选项的一维数组中获取一个选项对应的值,该数组如下static const char *config_options原创 2012-07-29 11:06:34 · 1884 阅读 · 0 评论 -
mongoose之main函数
mongoose的main函数源码如下int main(int argc, char *argv[]) { init_server_name(); start_mongoose(argc, argv); printf("%s started on port(s) %s with web root [%s]\n", server_name, mg_get_opti原创 2012-09-01 15:22:18 · 682 阅读 · 0 评论 -
运行mongoose的链接库问题
编译环境ubuntu 12.04Linux ubuntu 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux下载了一份mongoose的源码,编译成功通过,但是运行时出错,提示"load_dll: cannot load libssl.soFail原创 2012-09-02 11:05:26 · 1598 阅读 · 0 评论 -
mongoose之master_thread函数
mongoose采用了生产者-消费者模式来运作,即一端接受连接(生产),另一端处理连接(消费),如此反复。master_thread()函数采用了select的I/O复用模式,相信这也是有评论称mongoose效率不高的原因。因为select函数原型如下int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfd原创 2012-09-26 16:57:21 · 1383 阅读 · 0 评论 -
mongoose之worker_thread()函数
前面已经介绍过了mongoose的生产者过程,现在介绍下消费者过程。mongoose默认创建了10个worker_thread()线程来处理已接受的连接。worker_thread()函数原型如下:static void worker_thread(struct mg_context *ctx) { struct mg_connection *conn; int buf_size = a原创 2012-09-27 13:57:29 · 1708 阅读 · 0 评论