草庐IT

socket-timeout-exception

全部标签

java - 调用 Exception.printStackTrace 时出现 AbstractMethodError

在catch子句中,我想打印异常的跟踪:try{...}catch(Exceptionexc){exc.printStackTrace();...}但在某些情况下,我没有得到堆栈跟踪,而是看到类似这样的内容:Exceptioninthread"pool-1-thread-2"java.lang.AbstractMethodError:java.lang.Exception.printStackTrace()V...通常,如果库在运行时的版本与编译时的版本不同,就会发生此异常,但在这种情况下,我使用的是Java库中的类。printStackTrace是在Throwable中实现的,所以这

Java - readObject() 和 setSoTimeout()

因此,我在客户端编写了一个线程,它尝试从套接字流中readObject()。只要客户端连接,该线程就会运行。可以在客户端的GUI上关闭与服务器的连接。如果客户端决定断开连接(这不会退出客户端程序)通过点击“disconnect”菜单选项,套接字将关闭并且isConnected设置为false。由于客户端读取线程尝试从流中readObject(),而连接可以通过GUI关闭,我将超时设置为250毫秒(setSoTimeout(250)).@Overridepublicvoidrun(){this.connection=this.connectionHandler.getSocket();w

java - 谷歌应用引擎 - org.datanucleus.exceptions.NucleusUserException : Object Manager has been closed

为什么下面的代码会导致org.datanucleus.exceptions.NucleusUserException:对象管理器已关闭?异常似乎是在query.getResultList()处抛出的。publicfinalvoidremoveUserTokens(finalStringusername){finalQueryquery=entityManager.createQuery("SELECTpFROMPersistentLoginpWHEREusername=:username");query.setParameter("username",username);for(Obj

java - 在客户端 JAVA 中调用 socket.close() 时套接字不关闭服务器端

我在java中遇到套接字问题。我有一个ServerSocket正在监听accept()并为每个客户端请求生成线程。客户端和服务器之间的通信工作正常。我正在使用输入流从服务器线程中的客户端读取数据,例如:inputStream=mySocket.getInputStream();bytes=inputStream.read(buffer);我的问题是,如果我从客户端调用socket.close(),bytes=inputStream.read(buffer);的阻塞调用没有任何反应,它会继续阻塞。但是,如果我关闭来自服务器的套接字,它会起作用,然后客户端的inputStream.read

java - 如何理解java Socket-Permissions?

permissionjava.net.SocketPermission"192.168.1.1:31337","connect,accept,resolve";以下权限允许什么?我的应用程序是否允许仅接受来自192.168.1.1:31337(可能是外部客户端)的连接或接受到192.168.1.1:31337的连接(我的应用程序在192.168.1.1:31337上运行,“听”的区别在哪里'?). 最佳答案 如果您的代码是小程序或在Java安全管理器下运行,您需要明确授予它执行某些操作的权限。Inorderforaresourcea

exception - 为什么我的 elasticsearch 无法在 JAVA API 中构建 transportclient?

我在Java中有一个简单的elasticsearch代码是这样的:publicclassTryElastic{publicstaticvoidmain(String[]args)throwsUnknownHostException{Mapjson=newHashMap();json.put("user","kimchy");json.put("postDate",newDate());json.put("message","tryingoutElasticsearch");try{Settingssettings=Settings.settingsBuilder().put("clus

Java 套接字错误 : Reading Strings from Socket's InputStream

我正在使用Socket与ServerSocket通信。字符串正在从服务器发送到我的套接字。每个不同的行都是一条消息,在解析时包含信息。要读取这些文本行,需要使用扫描器。问题在于数据“突飞猛进”。虽然Server在连续均匀的发送数据,但是client端的Scanner读取的数据好像有停顿,一下子读入一堆消息(30-40条),然后又停顿。它无限期地重复这个循环。如果我提高发送数据的速率,暂停的持续时间会减少;如果我放慢数据速度(每秒1条消息),错误仍然存​​在并且暂停变得很长。这几乎就好像Socket在将任何数据发送到Scanner之前等待其缓冲区溢出;然后刷新所有内容并再次等待溢出。但是

Java 泛型方法返回不同的类型 - 无一异常(exception)

我发现了一些奇怪的代码,其中我说“这永远不会被调用,因为它会抛出类转换异常”。好吧,代码被调用并正常工作。谁能给我解释一下:为什么会这样?方法getZipList()被定义为返回一个字符串列表,但内部逻辑返回一个包含不同对象的列表。同样在main方法内部,字符串列表应为“列表”,但列表包含不同的内容。publicclassGenericMethodList{publicstaticvoidmain(String[]args){GenericMethodListo=newGenericMethodList();Listlist=o.getZipList(true);Iteratorite

java - Netty的ChannelOption中的SO_TIMEOUT和CONNECT_TIMEOUT_MILLIS是什么意思?

SO_TIMEOUT和CONNECT_TIMEOUT_MILLIS是什么意思,它们之间有什么区别?我发现:许多请求花费3.004秒,而我的处理程序总是花费0.003秒或0.004秒,我将SO_TIMEOUT设置为3000,它们之间有关系吗?我认为SO_TIMEOUT意味着当在SO_TIMEOUT时间内没有发送响应时,立即发送此响应。这个对吗? 最佳答案 CONNECT_TIMEOUT_MILLIS表示超时值来设置一个connection,这个超时是Netty支持的。SO_TIMEOUT是socket的选项,它会影响:|ServerS

java - Apache Camel : Aws-S3 consumer starts failing with connection pool timeout

我使用AWS-S3消费者定期轮询S3上特定位置的文件。在轮询一定次数后,它开始失败并出现给定的异常,Willtryagainatnextpoll.Causedby:[com.amazonaws.AmazonClientException-UnabletoexecuteHTTPrequest:Timeoutwaitingforconnectionfrompool]com.amazonaws.AmazonClientException:UnabletoexecuteHTTPrequest:Timeoutwaitingforconnectionfrompoolatcom.amazonaws.