当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 网络编程中socket的分量我想大家都很清楚了,socket也就是套接口,在套接口编程中,提到超时的概念,我们一下子就能想到3个:发送超时,接收超时,以及select超时(注:select函数并不是只用于套接口的,但是套接口编程中用的比较多),在connect到目标主机的时候,这个超时是不由我...
 

 

 ·java学习从入门到精通    »显示摘要«
    摘要:作者:robbin网址:http://www.fankai.com/java learning path (一)、工具篇一、 jdk (java development kit)jdk是整个java的核心,包括了java运行环境(java runtime envirnment),一堆java工具和java基础的类库(rt.jar)。不论什么java应用服务器实质都是内置了某个版本的jdk。因此掌握......
 ·delphi 控制excel    »显示摘要«
    摘要:  1 创建excel文件  要在delphi中控制excel,就必须用到ole自动化。现在一般采用ole2来创建ole对象,当激活一个ole对象时,服务器程序仅在容器程序内部激活,这就是所谓的“就地激活”(in-place activation)。  创建excel文件时,先创建一个ole对象,然后在对象中建立工作表worksheet,如函数createexcel所示: ......


Socket编程之Connect超时

    网络编程中socket的分量我想大家都很清楚了,socket也就是套接口,在套接口编程中,提到超时的概念,我们一下子就能想到3个:发送超时,接收超时,以及select超时(注:select函数并不是只用于套接口的,但是套接口编程中用的比较多),在connect到目标主机的时候,这个超时是不由我们来设置的.不过正常情况下这个超时都很长,并且connect又是一个阻塞方法,一个主机不能连接,等着connect返回还能忍受,你的程序要是要试图连接多个主机,恐怕遇到多个不能连接的主机的时候,会塞得你受不了的.我也废话少说,先说说我的方法,如果你觉得你已掌握这种方法,你就不用再看下去了,如果你还不了解,我愿意与你分享.本文是已在linux下的程序为例子,不过拿到windows中方法也是一样,无非是换几个函数名字罢了.

【程序编程相关:高性能服务器程序开发(1)

    linux中要给connect设置超时,应该是有两种方法的.一种是该系统的一些参数,这个方法我不讲,因为我讲不清楚:p,它也不是编程实现的.另外一种方法就是变相的实现connect的超时,我要讲的就是这个方法,原理上是这样的: 【推荐阅读:使用Hibernate来实现持久对象

【扩展信息:以实例说明如何使用C#从数据库中提取数据

 1.建立socket

 2.将该socket设置为非阻塞模式

 3.调用connect()

 4.使用select()检查该socket描述符是否可写(注意,是可写)

 5.根据select()返回的结果判断connect()结果

 6.将socket设置为阻塞模式(如果你的程序不需要用阻塞模式的,这步就省了,不过一般情况下都是用阻塞模式的,这样也容易管理)

如果你对网络编程很熟悉的话,其实我一说出这个过程你就知道怎么写你的程序了,下面给出我写的一段程序,仅供参考.

/******************************

* time out for connect()  

*              write by kerl w

******************************/

#include <sys/socket.h>

#include <sys/types.h>

#define time_out_time 20  //connect超时时间20秒

int main(int argc , char **argv)

{

     ………………


...   下一页
 ·网页对联广告    »显示摘要«
    摘要:ad.js //网页对联广告 function initecad() {document.all.adlayer1.style.postop = -200;document.all.adlayer1.style.visibility = ´visible´document.all.adlayer2.style.postop = -200;document.all.adla......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE