这个运行时错误意味着什么?
我已经用谷歌搜索了它,有人说,它属于计时器,其他人说它是套接字错误,更多说,它属于图片。我有套接字和定时器(很多定时器),我不知道,其中哪一个导致它。它可以使用一个多小时,其他时间只需5分钟。有任何想法吗?
这个错误的基本印象就足够了。如果我发布所有代码,它可能发生的地方,这个页面将是几公里长(当然有点极端,但它是很多代码。)
现在发现,它可能属于too many open files
,但我没有在我的应用中使用任何外部文件。
似乎是内存泄漏,属于这一部分:
public static Runnable connection() throws IOException {
Log.e("Communication", "connection");
new Thread(new Runnable() {
public void run() {
Looper.prepare();
try {
serv = new ServerSocket(port); sock = serv.accept();
reader(); } catch (IOException e) {
e.printStackTrace();
}
}
}).start();
return null;
答案 0 :(得分:2)
删除上面的部分代码后,一切正常。删除looper.prepare()
,我的应用程序不再死了。
答案 1 :(得分:0)
public static void sendJsonList(final List<String> jsonStrlist,
final String resturl) {
Thread t = new Thread() {
public void run() {
Looper.prepare();
/* Your HTTP clients code */
try {
for (String jsonStr : jsonStrlist) {
/* Loop logic */
response = client.execute(post);
if (response != null) {
/*reponse handler logic */
}
}
} catch (Exception e) {
e.printStackTrace();
}
Looper.loop();
}
};
t.start();
}