aardio 文档

wsock.tcp.asynServer 库模块帮助文档

tcpasynServerObject 成员列表

tcpasynServerObject._beforeStop

tcpasynServerObject._beforeStop = function(){
    /*服务端关闭以前触发  
此回调函数是标准库保留接口  
用户不应使用此回调*/
}

tcpasynServerObject._onClientClosed

tcpasynServerObject._onClientClosed = function(hSocket){
    /*客户端连接已经关闭时触发  
此函数在连接断开后一定会被触发  
此回调函数是标准库保留接口  
用户不应使用此回调*/
}

tcpasynServerObject.acceptCount

当前连接数,不可改动该值

tcpasynServerObject.beforeStop

tcpasynServerObject.beforeStop = function(){
    /*服务端关闭以前触发*/
}

tcpasynServerObject.bind(IP,端口)

绑定 IP 与端口。
应当由 start 函数自动调用此函数。

tcpasynServerObject.clearKeepAliveTimeout()

关闭所有超出keepAliveTimeout限制的超时连接
在连接超出最大连接数时,此函数会被自动调用

tcpasynServerObject.client()

返回对象:tcpaclientObject

tcpasynServerObject.client(hSocket)

用于获取客户端套接字对应的客户端对象

tcpasynServerObject.clientBufferSize

客户端套接字读写缓冲区大小,默认为1MB
缓冲区如果设置的太小,会导致过于频繁的调用读写函数

tcpasynServerObject.getLocalIp()

返回当前绑定的IP,端口号

tcpasynServerObject.getRemoteIp(hSocket)

返回客户端IP地址,端口

tcpasynServerObject.isClosed(hSocket)

连接是否已关闭

tcpasynServerObject.isConnected(hSocket)

是否已连接并准备就绪

tcpasynServerObject.keepAliveTimeout

最大保持连接时间,以秒为单位,
负数表示不限时间

tcpasynServerObject.listen(请求队列大小)

监听构造函数绑定的 IP 端口,成功返回 true 。
已自动调用此函数。

tcpasynServerObject.maxConnection

最大连接数

tcpasynServerObject.onClientClosed

tcpasynServerObject.onClientClosed = function(hSocket){
    /*客户端连接已经关闭时触发  
此函数在连接断开后一定会被触发*/
}

tcpasynServerObject.onClose

tcpasynServerObject.onClose = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*已断开连接,  
如果缓冲区中仍然有数据,  
这个事件可能在其他事件前面触发  
主动调用close函数立即关闭连接,此事件不会被触发,  
但onClientClosed事件总会在关闭连接后触发*/ 
}

tcpasynServerObject.onOpen

tcpasynServerObject.onOpen = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*已连接  
在这里可以开始发送数据*/ 
}

tcpasynServerObject.onOutOfBandData

tcpasynServerObject.onOutOfBandData = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*收到紧急数据  
即send函数最后一个flag参数设为_MSG_OOB时发送的1字节带外数据*/      
}

tcpasynServerObject.onRead

tcpasynServerObject.onRead = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*收到数据  
可阻塞读取数据  
定义了此事件就不应同时定义onReceive事件*/    
}

tcpasynServerObject.onReceive

tcpasynServerObject.onReceive = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*收到数据  
仅读取已到达的数据  
定义了此事件就不应同时定义onRead事件*/   
}

tcpasynServerObject.onSend

tcpasynServerObject.onSend = function(hSocket,err){
    var client = tcpasynServerObject.client(hSocket);

    /*发送数据*/
}

tcpasynServerObject.onStop

tcpasynServerObject.onStop = function(err){


    /*已停止服务端  
主动调用stop函数停止服务端时不会触发此事件*/ 
}

tcpasynServerObject.serverAddress

服务端监听地址

返回对象:sockaddrInObject

tcpasynServerObject.shutdown()

断开 TCP 服务端

tcpasynServerObject.start(IP,端口,请求队列大小)

启动单线程异步TCP服务端,成功返回true,失败返回null,

如果不写IP,则默认设为"0.0.0.0"也即监听本机所有IP,访问此服务端也不限制IP
限制仅本机可以访问建议写127.0.0.1

端口为0或省略则自动查找1025以后的空闲端口
注意0-1023为系统通用服务保留端口,
1024-49151为用户服务端口,其中大约%9已由IANA注册分配
49152-65535为私有或临时端口

tcpasynServerObject.stop()

关闭 TCP 服务端

tcpasynServerObject.clients 成员列表

这是一个包含所有客户端套接字的表对象
其中键为套接字句柄,值为 wsock.tcp.asynClient对象

tcpasynServerObject.clients.?

返回对象:tcpaclientObject

wsock.tcp 成员列表

wsock.tcp.asynServer()

创建单线程异步TCP服务端

返回对象:tcpasynServerObject

Markdown 格式