TCP 双工问题
我也不清楚是不是TCP双工造成的问题,情况是这样的:
1.客户端启动两个线程(相差很短时间间隔)向服务器申请下载文件。
2.服务器读取了第一个线程的请求,发送文件。
3.服务器响应完第一个线程的请求后,读取不到第二个线程发来请求的信息。
我想知道,第二个线程发来的数据发送到哪里去了?服务器接收到了没有,如果接收到了怎么才能读取出来,多谢~
------解决方案--------------------
是你的锁没有释放
Java code
System.out.println("请求线程" + this + "结束");
System.out.println(Xserv.socketWriteLock.getHoldCount());
Xserv.socketWriteLock.unlock();