diff options
author | Mathieu Chartier <mathieuc@google.com> | 2013-11-13 14:33:28 -0800 |
---|---|---|
committer | Mathieu Chartier <mathieuc@google.com> | 2013-11-13 14:48:41 -0800 |
commit | bcd5e9daecad39f0dab3246808b4835caec29ea6 (patch) | |
tree | 1221f94faef80c649e7236f0e7c3045383720abb /runtime/thread_pool_test.cc | |
parent | dfcca560e7b92e055a02adb39fdfb11798144cdd (diff) | |
download | art-bcd5e9daecad39f0dab3246808b4835caec29ea6.zip art-bcd5e9daecad39f0dab3246808b4835caec29ea6.tar.gz art-bcd5e9daecad39f0dab3246808b4835caec29ea6.tar.bz2 |
Manually manage thread pool stacks.
We now allocate the thread pool worker stack using a MemMap. This
enables us to name the maps so that we get more descriptive output
for debugging leaks.
Appears to fix the mips build 5/5 successful clean-oat and builds.
This is probably since glibc caches up to 40 MB of thread stacks
before releasing them.
Change-Id: I1df2de50cb95838aa0d272a09807021404ba410c
Diffstat (limited to 'runtime/thread_pool_test.cc')
-rw-r--r-- | runtime/thread_pool_test.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/runtime/thread_pool_test.cc b/runtime/thread_pool_test.cc index 9b789d2..1b22361 100644 --- a/runtime/thread_pool_test.cc +++ b/runtime/thread_pool_test.cc @@ -59,7 +59,7 @@ int32_t ThreadPoolTest::num_threads = 4; // Check that the thread pool actually runs tasks that you assign it. TEST_F(ThreadPoolTest, CheckRun) { Thread* self = Thread::Current(); - ThreadPool thread_pool(num_threads); + ThreadPool thread_pool("Thread pool test thread pool", num_threads); AtomicInteger count(0); static const int32_t num_tasks = num_threads * 4; for (int32_t i = 0; i < num_tasks; ++i) { @@ -74,7 +74,7 @@ TEST_F(ThreadPoolTest, CheckRun) { TEST_F(ThreadPoolTest, StopStart) { Thread* self = Thread::Current(); - ThreadPool thread_pool(num_threads); + ThreadPool thread_pool("Thread pool test thread pool", num_threads); AtomicInteger count(0); static const int32_t num_tasks = num_threads * 4; for (int32_t i = 0; i < num_tasks; ++i) { @@ -129,7 +129,7 @@ class TreeTask : public Task { // Test that adding new tasks from within a task works. TEST_F(ThreadPoolTest, RecursiveTest) { Thread* self = Thread::Current(); - ThreadPool thread_pool(num_threads); + ThreadPool thread_pool("Thread pool test thread pool", num_threads); AtomicInteger count(0); static const int depth = 8; thread_pool.AddTask(self, new TreeTask(&thread_pool, &count, depth)); |