Um... it sounds like you are just doing a lot of work in the main thread, and getting an ANR dialog. Don't do that. :) If you have lots of work to do, do it in a background thread. All Service callbacks happen on the main thread.
On Fri, Mar 13, 2009 at 11:16 AM, Bob <[email protected]> wrote: > > Thanks, I'll look more at the logs for crash issue. But regardless of > the crash, am I correct in thinking that if I call a service it should > do its processing in the background and the main UI thread should > immediately update? For this does it matter whether I start the > service from a background thread or not? The crash doesn't occur for > a while into the processing but in the mean time my UI is not > progressing. > > On Mar 13, 11:03 am, Dianne Hackborn <[email protected]> wrote: > > At the very least, you should include (and look at!) the stack crawl of > the > > crash. That will usually tell you all you need to know about why it > > crashed. The stack crawl is in the log. > > > > > > > > On Fri, Mar 13, 2009 at 9:39 AM, Bob <[email protected]> wrote: > > > > > Thanks for your quick response. It doesn't access or modify any > > > views. It accesses the context to read in some raw resources and > > > writes to the sqllite database also via context. > > > > > On Mar 13, 9:32 am, Streets Of Boston <[email protected]> wrote: > > > > Hi Bob, > > > > > > Your code snippet is not enough to give you some more info. > > > > E.g. how does backgroundRefresh2 looks like (it public void run() > > > > implementation). > > > > > > Based on its name 'backgroundRefresh2': does it access View-s and > > > > modify these view (e.g. update text-view, images, etc.)? > > > > If so, that may explain your crash. You should not access any View > (or > > > > subclass of View) in any other thread than your main message- > > > > dispatching thread (i.e. the thread on which your onCreate/onDestroy/ > > > > onPause/onResume/on<anything> is called). > > > > > > On Mar 13, 11:05 am, Bob <[email protected]> wrote: > > > > > > > Hi, > > > > > I have moved some intensive processing from my main thread to a > > > > > service. My UI is hanging and then crashing when I start the > service, > > > > > even if I put the service start in a new thread started via > > > > > > > Thread updateThread = new Thread(null, backgroundRefresh2, > > > > > "new_thread"); > > > > > updateThread.start(); > > > > > > > What am I doing wrong? Also, it seems like the cause of the > eventual > > > > > crash in the service/worker thread doesn't show up in LogCat. > > > > > > > Thanks, > > > > > Bob > > > > -- > > Dianne Hackborn > > Android framework engineer > > [email protected] > > > > Note: please don't send private questions to me, as I don't have time to > > provide private support. All such questions should be posted on public > > forums, where I and others can see and answer them. > > > -- Dianne Hackborn Android framework engineer [email protected] Note: please don't send private questions to me, as I don't have time to provide private support. All such questions should be posted on public forums, where I and others can see and answer them. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---

