我需要为使用ksoap 2连接到Web服务的J2ME应用程序添加超时。
我在http://ksoap2.sourceforge.net/doc/api/org/ksoap2/transport/HttpTransport.html尝试了描述为可能的伪超时的方法,但它似乎无法在此设备上运行。
我会在另一个线程上运行连接并在计时器触发时终止它但是在每个http://developers.sun.com/mobility/midp/articles/threading2/完成J2ME执行之前无法杀死一个线程(这是一个嵌入式设备,所以我可以'只是在后台留下无限数量的线程阻塞)。我不能使用poll作为布尔方法,因为它是单次尝试打开阻塞的连接。
系统超时似乎因设备模态而异,对我来说太长了。
有没有人对可能有效的事情有任何想法?
答案 0 :(得分:2)
我最终使用了具有setSoTimeout()方法的Socket类。
答案 1 :(得分:2)
可以提一下,我对KSoap2 v2.5.2进行了修改,以支持HttpTransportSE类的超时。超时发生时会抛出SocketTimeoutException。
中找到了jar和src答案 2 :(得分:1)
请记住,您没有使用功能齐全的计算机。在某些设备上,您无法中断网络操作,尤其是TCP连接。
这就是我们的工作,
这适用于所有模拟器,但连接线程在5分钟后才能在某些手机上获得异常。