在学习java nio的过程中发现某些情况下使用该方法会导致程序阻塞,(情况:服务器,Linux:客户端,WIN10) java.net.InetAddress.getHostName() 阻塞情况如下: "TCP:Selector@server:/192.168.0.117:18300" prio=6 tid=0x0000000007eff800 nid=0x3674 runnable [0x00000000093ae000] java.lang.Thread.State: RUNN…
程序抛出这个异常的原因多数是因为在此[host:port]没有监听,那么该如何解决这个问题呢,如下 第一个要做的是看你的host和port是否写错了,如 [ 127.00.1:8080 ] 第二个要看你的server是否真正的运行起来了,比如server在启动过程某些组件加载异常,会导致服务启动不成功. 第三个有可能是防火墙的原因,关闭防火墙试试 第四个就是如果你是自己写的socket那么检查如下: //使用不带有host的InterSocketAddress socket.bind(new I…
同事遇到了一个问题,开始项目运行的好好的,过了一段时间再访问页面会报出如下错误信息(只贴了部分), 这是为啥呢,可能是由于servlet-api版本jar包重复导致的,他项目本身使用了servlet-api(pom.xml中引用), 通过eclipse部署tomcat,tomcat中也包含了servlet-api.jar,而且这两个jar包版本不一致.换成版本一致的重新部署之即可, java.lang.ClassNotFoundException: org.apache.jsp.WEB_002d…
添加javaVM参数: -Xbootclasspath/p:lib/alpn-boot-8.1.10.v20161026.jar 文章来源:http://www.cnblogs.com/gifisan/p/6245207.html…
搭建ssm框架时报了如下错误,原因是: mybatis在初始化bean的时候需要无参构造器, 如果写了有参构造器,将会把无参构造器覆盖掉,加上一个无参构造器就可以了…
在本地开启了代理,postman可以正常发起外部请求,但Java代码却请求失败,已解决 现象:开了vpn访问公司服务器,postman可以正常发起服务器请求,但是java代码请求失败,连接超时.包括在本地写个接口去调用服务器接口,还包括测试用例去调用服务器接口,都不行 最终解决:项目启动时增加启动项 -Djava.net.preferIPv4Stack=true 作用:只使用IPv4(禁用IPv6) 这样的话,在本地写的接口去调用服务器接口,就可以使用了. 测试用例去调用服务器接口还不行,不知道…
相对于非阻塞通信的复杂性,通常客户端并不需要使用非阻塞通信以提高性能,故这里只有服务端使用非阻塞通信方式实现 客户端: package com.test.client; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.net.InetAddress; import java.net.InetSocketAddress; import j…
阻塞指的是暂停一个线程的执行以等待某个条件发生(如某资源就绪),学过操作系统的同学对它一 定已经很熟悉了.Java 提供了大量方法来支持阻塞,下面让我们逐一分析. 转载于:http://blog.csdn.net/small____fish/article/details/7726468 1. sleep() 方法:sleep() 允许 指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间 内进入阻塞状态,不能得到CPU 时间,指定的时间一过,线程重新进入可执行状态. 典型地,sleep(…
使用Notepad++编码编译时报错(已解决?) 使用Notepad++编码,编译的时候经常会报错,说什么GBK编码啥啥啥~~~但同样的编码用ECLIPSE就没有问题.再有,用记事本把他保存成ANSI格式也没有问题.******难道JAVA编码不都是用UTF-8格式的吗? *****本帅今天决定暂不用Notepad++了,还是用ECLIPSE,省得麻烦 本帅今天又用Notepad++编译程序,一个偶然的机会发现,win7的cmd窗口是用的ANSI格式编码的,这样编译汉字时会有乱码.于是本帅就把N…
Java并发编程:阻塞队列 在前面几篇文章中,我们讨论了同步容器(Hashtable.Vector),也讨论了并发容器(ConcurrentHashMap.CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便.今天我们来讨论另外一类容器:阻塞队列. 在前面我们接触的队列都是非阻塞队列,比如PriorityQueue.LinkedList(LinkedList是双向链表,它实现了Dequeue接口). 使用非阻塞队列的时候有一个很大问题就是:它不会对当前线程产…