我正在用Java编写Web服务器,我希望它支持HTTP 1.1 Keep-Alive连接.但是,如何判断客户端何时发送给定连接的请求?(如双线或类似物).
让我们看看stackoverflow如何处理这个非常模糊的问题 - 谷歌在技术规范和模糊语言中陷入困境的答案.我想要一个非C程序员的简明英语答案:)
我知道了.这证实了我怀疑不得不依赖于SocketTimeoutException.但是我不确定我是否可以从客户端依赖它来表明它已完成连接 - 这将允许我在大多数情况下更快地关闭连接 - 而不是等待超时.谢谢
这个线程安全吗?具体来说,该GetMyObject()方法是否可以返回null?我知道两个线程有可能获得不同的实例,MyObject但我并不关心.我只是想确保假设GetMyObject()永远不会返回null 是安全的.
class Foo {
private static MyObject obj;
public static MyObject GetMyObject() {
MyObject o = obj;
if(o == null) {
o = new MyObject();
obj = o;
}
return o;
}
public static void ClearMyObject() {
obj = null;
}
}
class MyObject {}
Run Code Online (Sandbox Code Playgroud)