无法创建epoll实例。错误号= 24

时间:2013-03-04 14:00:17

标签: java android runtime-error

这个运行时错误意味着什么?

我已经用谷歌搜索了它,有人说,它属于计时器,其他人说它是套接字错误,更多说,它属于图片。我有套接字和定时器(很多定时器),我不知道,其中哪一个导致它。它可以使用一个多小时,其他时间只需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;

2 个答案:

答案 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();
}