| /* |
| * Copyright (C) 2013 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| #ifndef ANDROID_THREAD_DEFS_H |
| #define ANDROID_THREAD_DEFS_H |
| |
| #include "graphics.h" |
| |
| #if defined(__cplusplus) |
| extern "C" { |
| #endif |
| |
| enum { |
| /* |
| * *********************************************** |
| * ** Keep in sync with android.os.Process.java ** |
| * *********************************************** |
| * |
| * This maps directly to the "nice" priorities we use in Android. |
| * A thread priority should be chosen inverse-proportionally to |
| * the amount of work the thread is expected to do. The more work |
| * a thread will do, the less favorable priority it should get so that |
| * it doesn't starve the system. Threads not behaving properly might |
| * be "punished" by the kernel. |
| * Use the levels below when appropriate. Intermediate values are |
| * acceptable, preferably use the {MORE|LESS}_FAVORABLE constants below. |
| */ |
| ANDROID_PRIORITY_LOWEST = 19, |
| |
| /* use for background tasks */ |
| ANDROID_PRIORITY_BACKGROUND = 10, |
| |
| /* most threads run at normal priority */ |
| ANDROID_PRIORITY_NORMAL = 0, |
| |
| /* threads currently running a UI that the user is interacting with */ |
| ANDROID_PRIORITY_FOREGROUND = -2, |
| |
| /* the main UI thread has a slightly more favorable priority */ |
| ANDROID_PRIORITY_DISPLAY = -4, |
| |
| /* ui service treads might want to run at a urgent display (uncommon) */ |
| ANDROID_PRIORITY_URGENT_DISPLAY = HAL_PRIORITY_URGENT_DISPLAY, |
| |
| /* all normal audio threads */ |
| ANDROID_PRIORITY_AUDIO = -16, |
| |
| /* service audio threads (uncommon) */ |
| ANDROID_PRIORITY_URGENT_AUDIO = -19, |
| |
| /* should never be used in practice. regular process might not |
| * be allowed to use this level */ |
| ANDROID_PRIORITY_HIGHEST = -20, |
| |
| ANDROID_PRIORITY_DEFAULT = ANDROID_PRIORITY_NORMAL, |
| ANDROID_PRIORITY_MORE_FAVORABLE = -1, |
| ANDROID_PRIORITY_LESS_FAVORABLE = +1, |
| }; |
| |
| #if defined(__cplusplus) |
| } |
| #endif |
| |
| #endif /* ANDROID_THREAD_DEFS_H */ |