socket模型的理解
2008-09-18 18:01 ubunoon 阅读(391) 评论(1) 编辑 收藏 举报
一直以来,对socket方面的编程一直是是而非,没有很好的概念。今天重新好好看了一些socket方面的资料,终于有所突破,对socket的几个函数有了一定的理解。
其实其他函数都好说,就是一个accept函数比较让人难以理解一些,为什么会这样的,因为accept是一个阻塞型的函数,在没有接收到客户端的connect函数连接的时候,accept是不会返回的。这与一般的函数不同,一般的函数是调用完后立即返回的,不存在阻塞的问题。
以前看的一些资料也没有说明白accept是阻塞型的函数,只是给出了五个函数的客户端与服务器端的连接模式。
accept函数返回的socket,应该在新的进程或线程中进行处理,这样,可以避开主线程的接收功能,专注于数据处理。 至于线程库,推荐使用Zthread库。
其实其他函数都好说,就是一个accept函数比较让人难以理解一些,为什么会这样的,因为accept是一个阻塞型的函数,在没有接收到客户端的connect函数连接的时候,accept是不会返回的。这与一般的函数不同,一般的函数是调用完后立即返回的,不存在阻塞的问题。
以前看的一些资料也没有说明白accept是阻塞型的函数,只是给出了五个函数的客户端与服务器端的连接模式。
accept函数返回的socket,应该在新的进程或线程中进行处理,这样,可以避开主线程的接收功能,专注于数据处理。 至于线程库,推荐使用Zthread库。
/*
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */