This allows for the stack size to be configured, which isn't
possible with std::thread. Prevents overflowing the stack when
performing complex operations in the task pool on darwin,
where the default pthread stack size is only 512kb.
Details
Details
- Reviewers
labath tberghammer clayborg - Commits
- rG7ddfe8ef7556: Use ThreadLauncher to launch TaskPool threads
rG52ca3286fbf9: Use ThreadLauncher to launch TaskPool threads
rLLDB313637: Use ThreadLauncher to launch TaskPool threads
rLLDB313537: Use ThreadLauncher to launch TaskPool threads
rL313637: Use ThreadLauncher to launch TaskPool threads
rL313537: Use ThreadLauncher to launch TaskPool threads
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Looks good
source/Utility/TaskPool.cpp | ||
---|---|---|
61 ↗ | (On Diff #115484) | (nit): Can you create a named constant for the min stack size as just based on this line I would have no idea what does that number do? |
Comment Actions
Is ThreadLauncher unavailable in this code for some reason? The link failed on linux buildbots (building lldb on Darwin was fine locally): http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/13311/steps/run%20unit%20tests/logs/stdio
Comment Actions
I don't really have an opinion if moving TaskPool to Host is a good or bad idea (haven't followed the recent layering efforts) but other then that looks good. I also tested it on Linux and it works fine.