DescriptionForce non-joinable SimpleThreads to be leaked.
The downstream iOS bots caught a race in https://codereview.chromium.org/2204333003/.
The race is reproducible on all platforms by forcing a sleep in SimpleThread::ThreadMain()
just before invoking Run().
The issue is that the tests return from Start() after the |event_| is signaled but there's
no guarantee that Run() is called before the SimpleThread object goes out of scope and
is destroyed. Making a race to invoke a virtual method on a potentially deleted object.
The iOS10 kernel just so happens to exercise that race more reliably. And worse, the crash
often occurred in the next, unrelated, test...
Non-joinable base::Threads are forced to be leaked and non-joinable base::SimpleThreads will
have to follow suit.
BUG=634835, 629716
Patch Set 1 #
Total comments: 2
Depends on Patchset: Messages
Total messages: 9 (4 generated)
|