J2ME联网的问题
联网的时候,有时候网络响应速度比较慢,我们就直好一直等待,请问有没有办法,在设定某个时间后,就中止这个线程,我看有些应用软件在这方面做得很好,给出有效思路的马上给分,如果有代码说明就更好了,呵
------解决方案--------------------你的意思是如果网络响应速度很慢,就退出这个线程?
------解决方案--------------------用sleep 别用wait好了, sleep记下数。N次后就退出
------解决方案--------------------手机每次联网都需要重新连接,光这个连接时间一般在3秒左右(我用nokia s60手机测试的, S40的手机会更长些),还有下载时间,如果gprs速度慢的话, 时间会更长的。
想网络连接类的会持续很长时间的操作,就应该用一个独立的线程。
------解决方案--------------------主线程开新线程进行联网操作,自己sleep timeout秒,醒来后检查联网线程的finished字段是否已被置为true,如果否,主线程转入错误处理部分。
------解决方案--------------------两个线程,一个做了连接,一个做记时,时间到了就断开连接
------解决方案--------------------程序的线程可以中止,但如果还需要发送网络请求,在上次网络请求堵塞(httpConnection不抛任何异常,服务器无法收到数据)的情况下,再次请求同样会堵塞。就是说手机的http栈堵塞了,程序是没有能力恢复的。有时甚至退出程序都没有办法,只能重新启动手机。比如QD的手机在网络连接频繁时就容易出现这种情况。
saltedfish
------解决方案--------------------写一个主线程对这个这个线程进行控制,这样扩展性会强一些
------解决方案--------------------这样的,,你可以写个按键动作,,起个线程计算时间,比如10秒,10秒过后就将已经打开的HTPP做个HTTP=null的操作,这样就会自动抛出异常的了,,那就等于断开了网络,,,不然的话就得等它自动超时了,这问题确实是网络应用挺麻烦的地方,
------解决方案--------------------在服务器上设备连接超时的时间,最大连接是多少秒钟,过后就自动断开链接