I see her point, it isn't scalable. What do you do when two apps both
want this, and you want both apps?

No, I agree, this needs addressing but not this way.

On Mar 26, 1:55 pm, Stoyan Damov <[email protected]> wrote:
> I could understand if you were saying that you can't provide
> multi-tasking experience on a single-tasking OS, such as Windows 3.1,
> which required cooperative multitasking.
> But I find it hard to understand what are the practical and technical
> reasons behind your resistance to provide a single-tasking experience
> on a multi-tasking OS.
>
> Cheers
>
>
>
> On Thu, Mar 26, 2009 at 9:50 PM, Stoyan Damov <[email protected]> wrote:
> > On Thu, Mar 26, 2009 at 8:26 PM, Dianne Hackborn <[email protected]> 
> > wrote:
> >> On Thu, Mar 26, 2009 at 10:19 AM, Stoyan Damov <[email protected]>
> >> wrote:
>
> >>> So, ok, I *admit* other apps can't cause DIRECTLY a GC in my app, but
> >>> it doesn't matter to me because other apps can cause the system to
> >>> lack memory and perform GC and it would ask my app's process to do GC,
> >>> which is how I understand JBQ's explanation of "remote GC".
>
> >>> So back to my point. I don't care what causes GC in *my* process. If
> >>> it's not me I DON'T want my process to be bothered at all.
>
> >> There is no way at all for other processes to cause your process to GC.
> >> What other processes -can- do is run some work -- any kind of work -- on a
> >> thread running at the same or higher priority as yours, causing you to have
> >> to share the CPU with them.  GCs are irrelevant to the problem here.  (But
> >> they -are- relevant to writing your own code so that you don't cause GCs to
> >> happen in your own process.)
>
> > Dianne, I haven't taken any time to dig in Android, so I don't know
> > what and how works.
> > All I know is that when *ANOTHER* process kicks GC, it affects MY
> > process, and my game stutters at this EXACT moment.
> > My game, like I said many times, *only* allocates memory on startup,
> > and then uses object pools.
> > I know that, when for example, the myFaves service is not trying to
> > send the damn MMS my games works PERFECTLY smoothly.
> > When it stutters, I see that GC has kicked in in process with PID "X",
> > and that X is not my game's process' PID.
>
> > I hope you get it know.
>
> >> Currently our approach for scheduling is that apps doing background work on
> >> a thread should lower that thread's priority -- the standard applications 
> >> on
> >> Android do this.  This has holes however, and allows people to mistakenly 
> >> do
> >> background work at a higher priority, so we should more strongly enforce 
> >> the
> >> scheduling of processes that are not running the foreground UI.
>
> > No, what you should do, and I mean Google behind Android, not you in
> > particular, is create an user experience SIMILAR to that on the
> > iPhone.
> > You can have the best of BOTH worlds and provide background processing
> > (i.e. as it works right now) AND on top of that implement "single
> > tasking" *experience*.
> > The implementation details are IRRELEVANT to all of us, users, and 
> > developers.
> > If you don't do it, I can bet my ass that Android, as a mobile device
> > OS, and especially as a smartphone OS will not last as long as people
> > "predicted".
>
> > Cheers- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to