summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andreas Huber <andih@google.com> 2011-09-15 12:21:40 -0700
committer Andreas Huber <andih@google.com> 2011-09-16 09:33:22 -0700
commit1d60b9629c022811e5efca71eb4d03f8b16a4cb0 (patch)
tree9dcc9272f330823999ae80f915d6e980b6e3aa05
parent8239e2322e2a0e403b0ba4a6ec4707640f116e64 (diff)
A new API "androidGetThreadPriority"
Change-Id: I6baeead8c70460863343fd557250635fb1e6a170
-rw-r--r--include/utils/threads.h4
-rw-r--r--libs/utils/Threads.cpp4
2 files changed, 8 insertions, 0 deletions
diff --git a/include/utils/threads.h b/include/utils/threads.h
index c685625055..ab3e8cdb63 100644
--- a/include/utils/threads.h
+++ b/include/utils/threads.h
@@ -143,6 +143,10 @@ extern int androidSetThreadSchedulingGroup(pid_t tid, int grp);
// in either case errno is set. Thread ID zero means current thread.
extern int androidSetThreadPriority(pid_t tid, int prio);
+// Get the current priority of a particular thread. Returns one of the
+// ANDROID_PRIORITY constants or a negative result in case of error.
+extern int androidGetThreadPriority(pid_t tid);
+
// Get the current scheduling group of a particular thread. Normally returns
// one of the ANDROID_TGROUP constants other than ANDROID_TGROUP_DEFAULT.
// Returns ANDROID_TGROUP_DEFAULT if no pthread support (e.g. on host) or if
diff --git a/libs/utils/Threads.cpp b/libs/utils/Threads.cpp
index 02c380b0e5..38c4b35a7c 100644
--- a/libs/utils/Threads.cpp
+++ b/libs/utils/Threads.cpp
@@ -368,6 +368,10 @@ int androidSetThreadPriority(pid_t tid, int pri)
return rc;
}
+int androidGetThreadPriority(pid_t tid) {
+ return getpriority(PRIO_PROCESS, tid);
+}
+
int androidGetThreadSchedulingGroup(pid_t tid)
{
int ret = ANDROID_TGROUP_DEFAULT;