日期:2014-05-20  浏览次数:20622 次

如何用socket做一个c/s之间稳定传输object的底层??
有没有一个成熟的框架?
只需要   client.readObject(taget)   或者   server.sendObject(taget)
这样的封装?
client和server之间长连接.用sotimeout断定连接是否失败.
主要是client和server之间要传输很多个object但又不一定是一次性传完,可能中间会间隔很长时间.
我自己在写client的时候遇到很大的问题.
一个readThread负责readObject到一个arraylist.  
但当我要readMessage时,   arraylist中可能会是空的.   于是我就让它一直while(true)检查list里是否为空,直到它里面有东西了,就返回出来.
但这有一个很严重的问题.   当while(true)检查list是否为空的时候,   如果list里一直是空,cpu要占到100%.       其它的工作都做不成了.  
我很想学学用callable接口去实现对一个arraylist中有无元素的检查.然后用Future接口把object返回出来...但不会实现哦..........
有哪位高人能实现一个用用callable接口做的对arraylist检查是否为空的办法?   而且不占cpu...   ??

------解决方案--------------------
主线程用循环,自然会僵住,开个线程就可以了。