`
szgaea
  • 浏览: 216488 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

犯了一个傻子错误

阅读更多
  这两天在写一个NIO的操作实例,写完测试,客户端发送一个数据到服务端,服务端进行读取,测试的时候发现服务器读取数据以后,一直还在尝试读,而且没有读到任何东西,我觉得这个太奇怪了,才了很多资料都没有找到相应的内容,通过两天的测试,最后发现,原来我的客户端的通道没有执行关闭的动作,而是直接退出了应用,服务端则一直没有收到这个通道流结束的标志,所以一直在尝试读取,但一直取不到数据,则通道也不会结束。希望这个对有碰到我这种情况的“代友”一点小提示。


http://www.meilijiankang.com有你所想,有你所要!
分享到:
评论
5 楼 szgaea 2009-06-19  
今天又进行了测试,是由于客户端关闭,但是这个通道在服务端并没有结束,则下次进行select的时候,还会读取到key,真正执行读数据操作的时候会异常,解决的办法是,catch异常,执行key的cancel操作。



美丽健康网http://www.meilijiankang.com
4 楼 Saito 2009-06-18  
  类似于狗嘴里有跟骨头。 你硬要从它嘴里拿出来。

  其结果可想而知。

 

  我猜想的。。 =v=
3 楼 szgaea 2009-06-18  
测试又发现,如果我在服务端channel注册了一个key,即使在循环里面进行了移除,但并没有做实际的操作,服务端一直对这个key进行处理,看似并没有做移除操作,好奇怪,这是什么原理呀?
2 楼 fjlyxx 2009-06-18  
异常的处理和 长短连接的选择。。最好设置下超时时间  服务端在N秒内没有读取到数据直接关闭。
1 楼 Saito 2009-06-18  
  Code Complete II 上看到的。 

  代码都是成对出现的。 写open()。 。不管open之后是啥。 先写个close()占住位置再说。。

相关推荐

    C++傻瓜教程.

    "C++傻瓜教程"旨在为初学者提供一个简单易懂的学习路径,帮助他们快速掌握C++的基础知识。 C++是C语言的扩展,引入了面向对象编程的概念,包括类、对象、封装、继承和多态等特性。学习C++首先要理解基本的语法结构...

    JAVA自学之路

    经常的进行知识难点的查询,如果一个问题牵扯的面比较广,就干脆到网上搜索一些相关的专题,比如“java 乱码 mysql” “oracle 创建用户”等等,如果有必要,不要犯懒,勤动手写一些小小的测试程序,来弄明白知识点...

    xml与反射.txt

    的,然后直接复制修改,由于容易犯各种低级的错误(大小写啊,多一个或少一个字母啊……),一个错误就可以让你找半天。 有了java反射机制,什么都好办了,只需要写一个dao类,四个方法,增删改查,传入不同的对象,...

    关于教育的英语名言.doc

    ”聪明人会从错误中学习,而傻瓜只会反复犯同样的错误。同样,约翰·鲍威尔认为,那些不能带来任何启示的错误才是真正的错误。 教育的核心在于书籍,它们是历史和文化的载体,托马斯·卡莱尔说:“书中有所有先贤的...

    童话《稻草人》学生读后笔记.pdf

    同时,这个故事也引导孩子们反思自己的行为,比如文中提到的小作者偷拿朋友玩具的事情,通过母亲的教诲和朋友的宽容,使小作者认识到诚实的重要性,并承诺不再犯同样的错误。 其次,《稻草人》这一形象本身象征着...

    andbase开发框架介绍

    继承它你能够获得一个简单强大可设置的操作栏,以及一系列的简单调用,如弹出框,提示框,进度框,副操作栏等。 4.提供效率较高图片缓存管理策略,使内存大幅度节省,利用率提高,效率提高。 程序中要管理大量的...

    二款android应用开发框架

    继承它你能够获得一个简单强大可设置的操作栏,以及一系列的简单调用,如弹出框,提示框,进度框,副操作栏等。 4.提供效率较高图片缓存管理策略,使内存大幅度节省,利用率提高,效率提高。 程序中要管理大量的图片...

    Android快速开发框架AndBase

    继承它你能够获得一个简单强大可设置的操作栏,以及一系列的简单调用,如弹出框,提示框,进度框,副操作栏等。 4.提供效率较高图片缓存管理策略,使内存大幅度节省,利用率提高,效率提高。 程序中要管理大量的图片...

    七年级语文上册同步练习:第五单元20《古代英雄的石像》北京课改版.doc

    1. 正确书写句子是学习语文的基础,题目要求抄写"骄傲的毛病谁都容易犯,除非圣人或傻子",旨在强调规范书写的重要性。 2. 这部分是字音练习,涉及的汉字有"铺路"的"铺"(pū)、"哀悼"的"悼"(dào)、"预备"的"预...

    字母组合oo的发音规律[学习].doc

    当"oo"组合出现在单词的重读音节末尾,且后面跟一个辅音时,通常读作长音/u:/.例如: - food(食物)、mood(心情)、roof(屋顶)、proof(证据)、waterproof(防水的)、shockproof(防震的)、hoof(蹄子)、...

Global site tag (gtag.js) - Google Analytics