Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Fatal Spin-On-Suspend/Stuck on ThreadID

I'm creating a custom calendar for an Android app. The way it works now is that it pulls events from an online MySQL database, transfers them into a JSONArray, and inputs them into the calendar from there. It was working fine (if a bit slow) on an emulator, but today I hooked up my S3 and it's giving me errors that I haven't received before. The errors I'm getting in my log say:

09-14 22:52:12.611: E/dalvikvm(4605): threadid=2: stuck on threadid=1, giving up

09-14 22:52:12.611: E/dalvikvm(4605): Fatal spin-on-suspend, dumping threads

This is the ASyncTask that it keeps getting hung up on:

package com.legends.app;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import android.os.AsyncTask;
import android.util.Log;

public class Events extends AsyncTask<Void, Void, String> {

    JSONArray jArray;
    public String result = null;
    InputStream is = null;
    StringBuilder sb=null;
    HttpEntity entity;

    protected String doInBackground(Void... arg0) {

          //http post - calls from the php file that opens the DB
          try{

               HttpClient httpclient = new DefaultHttpClient();
               HttpPost httppost = new HttpPost("http://legendsofnotredame.org/club/mobile/android/cal.php");
               HttpResponse response = httpclient.execute(httppost);

               entity = response.getEntity();

               }catch(Exception e){
                   Log.e("log_tag", "Error in http connection"+e.toString());
              }


          //convert response to string
            try{

                is = entity.getContent();

                BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);

                 sb = new StringBuilder();

                 sb.append(reader.readLine() + "\n");                 

                 String line="0";
                 while ((line = reader.readLine()) != null) {
                                sb.append(line + "\n");
                  }
                  is.close();
                  result=sb.toString();
                  }catch(Exception e){
                        Log.e("log_tag", "Error converting result "+e.toString());
                  }
            Log.e("test","Converted results to string");
            return result;
    }

    protected void onPostExecute(String result) {


    }

}

After adding a ton of logs, I determined that it was getting hung up on "sb.append(reader.readLine() + "\n");", and I'm not sure how to make it not do that. Any tips?

Edit: Here's the (almost) full logcat for running it, starting from where it hangs on readLine. I had to cute out some non-warning/non-error lines at the beginning because this post is too long, sorry!

09-15 14:02:13.251: W/dalvikvm(21710): threadid=2: spin on suspend #1 threadid=1 (pcf=0)
09-15 14:02:14.001: W/dalvikvm(21710): threadid=2: spin on suspend #2 threadid=1 (pcf=0)
09-15 14:02:14.752: W/dalvikvm(21710): threadid=2: spin on suspend #3 threadid=1 (pcf=0)
09-15 14:02:15.503: W/dalvikvm(21710): threadid=2: spin on suspend #4 threadid=1 (pcf=0)
09-15 14:02:16.254: W/dalvikvm(21710): threadid=2: spin on suspend #5 threadid=1 (pcf=0)
09-15 14:02:16.254: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:16.254: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:16.254: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:16.254: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:16.254: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:16.254: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:16.254: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:16.254: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:16.254: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=640 stm=5 core=0
09-15 14:02:16.254: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:16.254: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:16.254: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:16.254: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:16.254: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:16.254: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:16.254: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:17.005: W/dalvikvm(21710): threadid=2: spin on suspend #6 threadid=1 (pcf=0)
09-15 14:02:17.005: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:17.005: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:17.005: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:17.005: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:17.005: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:17.005: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:17.005: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:17.005: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:17.005: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=712 stm=5 core=0
09-15 14:02:17.015: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:17.015: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:17.015: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:17.015: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:17.015: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:17.015: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:17.015: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:17.765: W/dalvikvm(21710): threadid=2: spin on suspend #7 threadid=1 (pcf=0)
09-15 14:02:17.765: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:17.765: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:17.765: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:17.765: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:17.765: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:17.765: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:17.765: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:17.765: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:17.765: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=762 stm=5 core=0
09-15 14:02:17.765: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:17.765: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:17.765: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:17.765: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:17.765: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:17.765: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:17.765: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:18.516: W/dalvikvm(21710): threadid=2: spin on suspend #8 threadid=1 (pcf=0)
09-15 14:02:18.516: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:18.516: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:18.516: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:18.516: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:18.516: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:18.516: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:18.516: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:18.516: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:18.516: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=834 stm=5 core=0
09-15 14:02:18.516: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:18.516: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:18.516: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:18.516: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:18.516: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:18.516: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:18.516: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:19.267: W/dalvikvm(21710): threadid=2: spin on suspend #9 threadid=1 (pcf=0)
09-15 14:02:19.267: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:19.267: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:19.267: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:19.267: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:19.267: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:19.267: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:19.267: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:19.267: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:19.267: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=906 stm=5 core=0
09-15 14:02:19.267: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:19.267: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:19.267: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:19.267: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:19.267: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:19.267: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:19.267: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:20.018: W/dalvikvm(21710): threadid=2: spin on suspend #10 threadid=1 (pcf=0)
09-15 14:02:20.018: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:20.018: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=979 stm=5 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:20.018: E/dalvikvm(21710): Fatal spin-on-suspend, dumping threads
09-15 14:02:20.018: I/dalvikvm(21710): DALVIK THREADS:
09-15 14:02:20.018: I/dalvikvm(21710): (mutexes: tll=2 tsl=1 tscl=0 ghl=1)
09-15 14:02:20.018: I/dalvikvm(21710): "main" prio=5 tid=1 RUNNABLE JIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x40c3fcd0 self=0x10c2c30
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21710 nice=0 sched=0/0 cgrp=default handle=1074750856
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=979 stm=5 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at com.legends.app.CalendarActivity.onCreate(CalendarActivity.java:~122)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.Activity.performCreate(Activity.java:4470)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1053)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.access$600(ActivityThread.java:128)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.Handler.dispatchMessage(Handler.java:99)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.Looper.loop(Looper.java:137)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.app.ActivityThread.main(ActivityThread.java:4514)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.reflect.Method.invokeNative(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.reflect.Method.invoke(Method.java:511)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.main(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "AsyncTask #1" prio=5 tid=11 SUSPENDED
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x41a23660 self=0x12d4758
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21739 nice=10 sched=0/0 cgrp=bg_non_interactive handle=19348592
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=18 stm=2 core=1
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:~128)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.StringBuilder.append(StringBuilder.java:271)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.io.BufferedReader.readLine(BufferedReader.java:417)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.legends.app.Events.doInBackground(Events.java:56)
09-15 14:02:20.018: I/dalvikvm(21710):   at com.legends.app.Events.doInBackground(Events.java:1)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.AsyncTask$2.call(AsyncTask.java:264)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.util.concurrent.FutureTask.run(FutureTask.java:137)
09-15 14:02:20.018: I/dalvikvm(21710):   at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Thread.run(Thread.java:856)
09-15 14:02:20.018: I/dalvikvm(21710): "Binder Thread #2" prio=5 tid=10 SUSPENDED
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x419b8f08 self=0x12dec18
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21722 nice=0 sched=0/0 cgrp=default handle=18856864
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "Binder Thread #1" prio=5 tid=9 SUSPENDED
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x419b8540 self=0x12dcf78
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21721 nice=0 sched=0/0 cgrp=default handle=19135504
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "FinalizerWatchdogDaemon" daemon prio=5 tid=8 WAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x419b53d8 self=0x12e6520
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21720 nice=0 sched=0/0 cgrp=default handle=18832048
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=1
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710):   - waiting on <0x40c474f0> (a java.lang.Daemons$FinalizerWatchdogDaemon)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Object.java:364)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Daemons$FinalizerWatchdogDaemon.run(Daemons.java:213)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Thread.run(Thread.java:856)
09-15 14:02:20.018: I/dalvikvm(21710): "FinalizerDaemon" daemon prio=5 tid=7 WAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x419b5280 self=0x12d3a48
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21719 nice=0 sched=0/0 cgrp=default handle=18676648
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710):   - waiting on <0x40c355d0> (a java.lang.ref.ReferenceQueue)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Object.java:401)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:102)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:73)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Thread.run(Thread.java:856)
09-15 14:02:20.018: I/dalvikvm(21710): "ReferenceQueueDaemon" daemon prio=5 tid=6 WAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="main" sCount=1 dsCount=0 obj=0x419b5118 self=0x12e7bd8
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21718 nice=0 sched=0/0 cgrp=default handle=18676448
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710):   - waiting on <0x40c354f8> 
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Object.wait(Object.java:364)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:128)
09-15 14:02:20.018: I/dalvikvm(21710):   at java.lang.Thread.run(Thread.java:856)
09-15 14:02:20.018: I/dalvikvm(21710): "Compiler" daemon prio=5 tid=5 VMWAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="system" sCount=1 dsCount=0 obj=0x419b5028 self=0x12b2640
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21717 nice=0 sched=0/0 cgrp=default handle=18856760
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=2 stm=2 core=1
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "JDWP" daemon prio=5 tid=4 VMWAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="system" sCount=1 dsCount=0 obj=0x419b4f40 self=0x1269cc0
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21715 nice=0 sched=0/0 cgrp=default handle=19135712
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=1
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "Signal Catcher" daemon prio=5 tid=3 VMWAIT
09-15 14:02:20.018: I/dalvikvm(21710):   | group="system" sCount=1 dsCount=0 obj=0x419b4e48 self=0x12abed8
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21713 nice=0 sched=0/0 cgrp=default handle=18712776
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: I/dalvikvm(21710): "GC" daemon prio=5 tid=2 RUNNABLE
09-15 14:02:20.018: I/dalvikvm(21710):   | group="system" sCount=0 dsCount=0 obj=0x419b4d68 self=0x124d8e8
09-15 14:02:20.018: I/dalvikvm(21710):   | sysTid=21712 nice=0 sched=0/0 cgrp=default handle=19191584
09-15 14:02:20.018: I/dalvikvm(21710):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
09-15 14:02:20.018: I/dalvikvm(21710):   at dalvik.system.NativeStart.run(Native Method)
09-15 14:02:20.018: E/dalvikvm(21710): threadid=2: stuck on threadid=1, giving up
09-15 14:02:20.018: D/dalvikvm(21710): threadid=2: sending two SIGSTKFLTs to threadid=1 (tid=21710) to cause debuggerd dump
09-15 14:02:20.018: D/dalvikvm(21710): NOTE: pthread_kill #1 failed: Operation not permitted
09-15 14:02:22.010: D/dalvikvm(21710): NOTE: pthread_kill #2 failed: Operation not permitted
09-15 14:02:22.010: D/dalvikvm(21710): Sent, pausing to let debuggerd run
09-15 14:02:30.018: D/dalvikvm(21710): Continuing
09-15 14:02:30.018: E/dalvikvm(21710): VM aborting

And here's where I call it in the main Activity. These are also two separate files, I don't know if that's relevant but it might be, I don't know.

 Events db = new Events();
        db.execute();
        while (db.result == null){
         continue;}
        result = db.result;
like image 726
Nickel Avatar asked Sep 15 '12 03:09

Nickel


1 Answers

I figured it out after another day of playing around with it. It was timing out because of these lines in the non-AsyncTask:

while (db.result == null) {
    continue;
}

It took this as "you're caught forever in a while loop and therefore the program must have crashed", when in reality it was just taking time to read the events. However, without that there it would just move on without having fully loaded the events, creating a NullPointerException when it tries to use that array. What I did instead was do this:

while (db.result == null){
   try {
      Thread.sleep(100);
   } catch (InterruptedException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
   }
   continue;
}

The sleeping seems to send back to the app that I'm still there, just waiting for the data so I can continue. Either that or it slows down the amount of times I go through the while loop. Not sure which one it does but either way it solves the problem.

like image 52
Nickel Avatar answered Oct 01 '22 13:10

Nickel