Propagate background scheduling class across processes.

This is a very simply implementation: upon receiving an IPC, if the handling
thread is at a background priority (the driver will have taken care of
propagating this from the calling thread), then stick it in to the background
scheduling group.  Plus an API to turn this off for the process, which is
used by the system process.

This also pulls some of the code for managing scheduling classes out of
the Process JNI wrappers and in to some convenience methods in thread.h.
This commit is contained in:
Dianne Hackborn
2009-12-07 17:59:37 -08:00
parent 259e3384fa
commit 887f355f99
9 changed files with 144 additions and 44 deletions

View File

@@ -76,6 +76,13 @@ public class BinderInternal {
*/
public static final native IBinder getContextObject();
/**
* Special for system process to not allow incoming calls to run at
* background scheduling priority.
* @hide
*/
public static final native void disableBackgroundScheduling(boolean disable);
static native final void handleGc();
public static void forceGc(String reason) {