nio即new io,为原有的io提供缓存(buffer)支持,并加入了selector选择器来支持非阻塞的高伸缩性的io.

io都是阻塞的,即获取连接(read)开始必须等到读/写操作全部结束才会释放资源,我们有1000个io操作就需要1000个线程去维护,显然对系统压力太大,在如今高并发横行的时代,io性能更加捉襟见肘.

nio为我们提供了channel,selector,我们通过管道channel传输数据,而channel需要注册在selector(选择器)上,一个选择器可以管理1000个channel,所以可以通过一个线程就搞定,性能明显提升.

Connection refused: no further information异常:

1.socketChannel.connect( new InetSocketAddress("localhost",port));端口号被占用

2.在nio服务端的ServerSocketChannel.socket().bind(new InetSocketAddress(port));只传入端口号(我就是这个原因,后来加上

hostname又可以了,这块还得深入了解)

浅谈Java的Nio以及报Connection refused: no further information异常原因?相关推荐

  1. java的byte php_java_浅谈java的byte数组的不同写法,(由于篇幅原因阐述的不够详 - phpStudy...

    浅谈java的byte数组的不同写法 (由于篇幅原因阐述的不够详细科学,不喜勿喷). 经常看到java中对byte数组的不同定义,粗略整理的一下: 一个字节(byte)=8位(bit),"b ...

  2. file相对路径java_浅谈java 中文件的读取File、以及相对路径的问题

    一.对于java项目中文件的读取 1.使用system 或是 系统的properties对象 ①直接是使用 string relativelypath=system.getproperty(" ...

  3. java null什么意思_浅谈java中null是什么,以及使用中要注意的事项

    1.null既不是对象也不是一种类型,它仅是一种特殊的值,你可以将其赋予任何引用类型,你也可以将null转化成任何类型,例如: Integer i=null; Float f=null; String ...

  4. 浅谈Java多线程机制

    浅谈Java多线程机制 (-----文中重点信息将用红色字体凸显-----) 一.话题导入 在开始简述Java多线程机制之前,我不得不吐槽一下我国糟糕的IT界技术分享氛围和不给力的互联网技术解答深度. ...

  5. java 中的单元测试_浅谈Java 中的单元测试

    单元测试编写 Junit 单元测试框架 对于Java语言而言,其单元测试框架,有Junit和TestNG这两种, 下面是一个典型的JUnit测试类的结构 package com.example.dem ...

  6. 浅谈 Java Printing

    浅谈 Java  Printing 其实怎么说呢?在写这篇博文之前,我对java printing 可以说是一无所知的.以至于我在敲文字时, 基本上是看着api文档翻译过来的.这虽然看起来非常的吃力, ...

  7. java接口与类相同不同_浅谈java的接口和C++虚类的相同和不同之处

    C++虚类相当于java中的抽象类,与接口的不同之处是: 1.一个子类只能继承一个抽象类(虚类),但能实现多个接口 2.一个抽象类可以有构造方法,接口没有构造方法 3.一个抽象类中的方法不一定是抽象方 ...

  8. java对象头_浅谈java对象结构 对象头 Markword

    概述 对象实例由对象头.实例数据组成,其中对象头包括markword和类型指针,如果是数组,还包括数组长度; | 类型 | 32位JVM | 64位JVM| | ------ ---- | ----- ...

  9. java执行jar中的main_浅谈java 执行jar包中的main方法

    浅谈java 执行jar包中的main方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar 执行后总是运行指定的主方法,如果 jar 中有多个 ...

最新文章

  1. printf 命令详解
  2. A. Computer Game(纯模拟)
  3. KGPolicy:用于推荐的负采样模型(知识图谱策略网络)WWW 2020
  4. Variant类型转换成CString代码
  5. C语言i++和++i的区别和用法
  6. 如何用css实现类似简书的纵向导航/竖排导航
  7. 简单的圆形图标鼠标hover效果 | CSS3教程
  8. Red Hat Cormier发布OpenShift.io和容器状态指数
  9. ASP.NET WebService 中使用 ASP.NET_SessionId
  10. android的环境搭建与配置
  11. BCH编码与译码(MATLAB实现)
  12. ORACLE有EXCEL中trend函数,EXCEL【TREND】函数,你知道如何使用吗?
  13. 手机工商银行显示服务器安装不了,工行网银助手无法安装怎么办?
  14. 计算机怎样更新卡驱动,电脑显卡驱动怎么更新(NVIDIA显卡手动更新教程)
  15. Python智能语音机器人
  16. egret 微信小游戏 分享游戏截图
  17. 深度学习(一):给你的数据集打标签
  18. CSS单行文本和多行文本
  19. 黑马程序员-java基础8--IO流(一)
  20. ffmpeg命令行,单张图片,音频合成视频

热门文章

  1. 【每天get 一点新知识】Python print 打印结果(字符串类型)前面添加 说明
  2. Java线程池ExecutorService
  3. Java读书笔记(8)-单例模式
  4. Spoon新建repository的时候
  5. listview与adapter用法
  6. javascript 阻止冒泡和浏览器的默认行为
  7. 输入url并按下回车的那一刻发生了什么?
  8. LeetCode(892)——三维形体的表面积(JavaScript)
  9. 【Vue学习】—Vue UI组件库(二十八)
  10. Vue报错:3 errors and 0 warnings potentially fixable with the `--fix` option.