`
wuhua
  • 浏览: 2095154 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

SocketConnection 参数详细介绍

    博客分类:
  • J2ME
阅读更多

请大家看下面的代码: 
len = is.read(gData); 
这句代码会阻塞在这里,用了上面红色标出的代码后,能不能实现,超过5秒没反应后,read就不阻塞,而向下执行代码!  
try 

int len = 0; 
    sc = (SocketConnection) Connector.open("socket://100.42.25.3:885"); 
    is = sc.openInputStream(); 
    os = sc.openOutputStream(); 
    sc.setSocketOption(SocketConnection.LINGER, 5); 
    pmm.gDataBuf = null; 
    sender = new Sender(os); 
    sender.send(pmm.gStringReq); 
    // Loop forever, receiving data 
    gData = new byte[pmm.BUF_LENGTH]; 
    currentIndex = 0; 
    gBuf = new byte[50*1024]; 
    while (!pmm.bStopConnect) 
    { 
len = is.read(gData); 
    System.arraycopy(gData,0,gBuf,currentIndex,len); 
    currentIndex += len; 
    if(currentIndex > 300){ 
    if(newVerifyXml()){ 
    if((currentIndex%8) != 0){ 
    int left = 8 - currentIndex%8; 
    byte[] byteTmp = new byte[left]; 
    is.read(byteTmp); 

    opHandle();currentIndex=0; 
    } 
    } 
    } 
    stop(); 
} catch (ConnectionNotFoundException cnfe) { 
    Alert a = new Alert("错误", "无法连接服务器", null, AlertType.ERROR); 
    a.setTimeout(Alert.FOREVER); 
    display.setCurrent(a) ; 
} catch (IOException ioe) { 
    if (!stop) { 
ioe.printStackTrace(); 
    } 
} catch (Exception e) { 
    e.printStackTrace(); 

实现不了吧, 你弄个timer吧。 超时就把所有object 设置为null
 
SocketConnection.DELAY:开启Nagle算法?(0/1) 
SocketConnection.LINGER:服务器悬挂等待时间 
SocketConnection.KEEPALIVE:长连接时间 
SocketConnection.RCVBUF:接收缓冲 
SocketConnection.SNDBUF:发送缓冲 

不过虚拟机上可能支持的不好,或者不保证每次都准确 
建议使用定时器 
超时就把该关流,连接的全关了 
再置null

分享到:
评论

相关推荐

    rabbitmq的接口函数说明,api参数使用说明

    2、amqp_open_socket(获取socket) 3、amqp_set_sockfd(将connection和sockfd进行绑定) 4、amqp_login(用于登录RabbitMQ server,主要目的为了进行权限管理) 5、amqp_channel_open(用于关联conn和channel) 6、amqp_...

    基于socket手机网络象棋开发

    3. 连接客户端后,将socket作为参数,启动独立线程独立读写、逻辑业务(第二篇重点描述) 具体代码如下: /** * */ package net.tuolian.newserver; import java.io.IOException; import java.net.ServerSocket; ...

    j2me 手机聊天程序

    服务器与客户端的通信用的是socket通信,在客户端是SocketConnection建立连接,在服务器端是Socket建立连接。 服务器端 服务器端用ServerSocket对象监听9999号端口,当客户端发出请求,服务器用ServerSocket的...

    Socket:用于管理 Socket.io 连接的节点脚本

    类Socket 配置:需要 HTTP 服务器Object作为参数,以便 Socket.io 可以侦听它方法: on(eventName{String}, callback{Function})和trigger(eventName{String}, data{Array})监听和触发事件find(key{String}, value{...

    socket.io-sticky:一种在群集中使用Socket.IO的简单高效的方法

    也可以看看: (基于connection.remoteAddress路由) (基于x-forwarded-for标头的路由) 目录安装npm install @socket.io/sticky用法const cluster = require ( "cluster" ) ;const http = require ( "http" ) ;...

    q-socket:调整节点套接字(网络包)以与 q 和 q-connection 一起使用

    Q-Socket Q-Socket通过提供以下功能,使得在和下使用 Node 套接字更容易:听(参数,onconnected) 返回一个承诺的对象,要fulfilled当底层服务器端口被正常关闭; 或者rejected ,如果服务器端口产生错误或者如果...

    Node.js利用Net模块实现多人命令行聊天室的方法

    这篇文章介绍的是Node.js利用Net模块实现命令行式的多人聊天室,下面话不多说,来看看详细的介绍吧...net.Socket类一般用创建一个socket客户端或者是net.Server connection事件的参数。 工厂方法如下: 以上三个图展

    C实现LinuxFTP服务器Tinyftpd.zip

    模块简介TinyFTP分为 字符串工具模块、参数配置模块、socket模块、内部进程间通讯模块、系统调用工具模块。字符串工具模块:字符串模块主要用来处理开发过程中,各种对字符串的处理。模块在string.h 与 string.c参数...

    C#入门——面向对象等,代码+注释

    第16天 01播放音乐 01打开文件双击播放音乐 02线程 03线程执行带参数的方法-摇奖机 04创建服务端Socket(未实现) 04客户端的Socket(未实现) 05创建服务端的Socket 05创建客户端的Socket ConsoleApp1 第17天 02...

    基于MySQL的数据库中间件Meituan-DBProxy.zip

    由参数 db-connection-idle-timeout 控制 增加客户端连接的keepalive机制,避免网络异常后释放已断开的连接 完善管理日志,增加了管理命令日志、错误语句日志以及详细的错误日志 完善SQL...

    深入Node TCP模块的理解

    connectionListener参数用于指定当客户端与服务器建立连接时所要调用的回调函数,回调中有一个参数socket,指的是TCP服务器监听的socket端口对象 也可以通过监听connection事件的方式来指定监听函数 server.on('...

    chat:一个基于node,socket.io,jquery的在线聊天demo

    chat 一个基于node,express,socket.io,sql, jquery的在线聊天demo 初始化项目 要运行本项目,需要先安装sql,然后还原备份,...$ 修改server.js中mysql.createConnection的参数。 $ npm install $ node server.js

    node操作mysql数据库实例详解

    1、建立数据库连接:createConnection(Object)方法 该方法接受一个对象作为参数,该对象有四个常用的属性host,user,password,database。与php中链接数据库的参数相同。属性列表如下: host 连接数据库所在的...

    Node.js中JavaScript操作MySQL的常用方法整理

    一、建立数据库连接:createConnection(Object)方法  该方法接受一个对象作为参数,该对象有四个常用的属性host,user,password,database。与php中链接数据库的参数相同。属性列表如下: host: 连接数据库所在的...

    JBoss7-配置-管理员手册

    4.4.5.2.1. Connection Factories 78 4.4.5.2.2. Queues and Topics 79 4.4.5.2.3. Dead Letter和Redelivery 80 4.4.5.2.4. 安全性 81 4.4.5.2.5. 参考 82 4.4.5.3. Web 82 4.4.5.3.1. 容器设置 (Container ...

    JBoss7配置指南及管理员手册

    Connection Factories 78 4.4.5.2.2. Queues and Topics 79 4.4.5.2.3. Dead Letter和Redelivery 80 4.4.5.2.4. 安全性 81 4.4.5.2.5. 参考 82 4.4.5.3. Web 82 4.4.5.3.1. 容器设置 (Container configuration) 82 ...

    java面试宝典

    196、Can a database connection pool be instantiated in init method of servlet instead of server connection pool? What will be the problem? 46 综合部分 46 197、Class.forName的作用?为什么要用? 47 198、...

    检查网站是否存在 opensSSL

    import socket import time import select import re from optparse import OptionParser options = OptionParser(usage='%prog server [options]', description='Test for SSL heartbeat vulnerability (CVE-2014-...

    网狐6.6 服务器源代码 & 共享组件 & 数据库 (3)

    #define EVENT_TCP_SOCKET_CONNECT 0x0006 //连接事件 //网络事件 #define EVENT_TCP_NETWORK_ACCEPT 0x0007 //应答事件 #define EVENT_TCP_NETWORK_READ 0x0008 //读取事件 #define EVENT_...

    NodeJS链接MySql数据库的操作方法

    如下所示: //1.用npm命令安装mysql模块 npm install mysql //2.js文件中引入mysql模块 const mysqlModule = require(‘mysql’); //3.... socketPath:当主机和端口参数被忽略的时候,可以填写一个Un

Global site tag (gtag.js) - Google Analytics