Java 在Restlet的客户机类中超时是如何工作的?

Java 在Restlet的客户机类中超时是如何工作的?,java,http,timeout,restlet,Java,Http,Timeout,Restlet,下面是一些代码: Client client = new Client(Protocol.HTTP); client.setConnectTimeout(1); //milliseconds Response response = client.post(url, paramRepresentation); System.out.println("timed out"); 我希望发生的是,它在资源有时间处理之前打印超时。相反,超时不会发生任何事情,直到资源返回后才会超时打印。即使我在处理请求的

下面是一些代码:

Client client = new Client(Protocol.HTTP);
client.setConnectTimeout(1); //milliseconds
Response response = client.post(url, paramRepresentation);
System.out.println("timed out");
我希望发生的是,它在资源有时间处理之前打印超时。相反,超时不会发生任何事情,直到资源返回后才会超时打印。即使我在处理请求的资源上放置了一个Thread.sleep5000,整个睡眠都会执行,就像超时没有执行任何操作一样

有人有这方面的经验吗?我正在使用Restlet 1.1.1。谢谢。

有几件事可以尝试:

升级至Restlet 1.1.5,最新版本。如果这是客户端类中的一个bug,或者您正在使用的连接器中的bug,那么它可能已经被修复了。如果您的应用程序近期内无法投入生产,您可能希望尝试2.0的最新预览版本。 尝试使用其他客户端连接器。特别是如果您使用的是内置连接器,那么它实际上只用于临时开发。 试着在邮件列表上提问。那里的开发者非常乐于助人,反应迅速。
它是开源的,代码非常干净,我以前也看过它的其他内容。为什么不看看呢