double checked locking pattern is not safe on SMP
Change-Id: Ie6dd564bdcd45647cb4d62ab259462e3db112576
This commit is contained in:
parent
3aecbb0715
commit
e8db871de7
@ -73,10 +73,11 @@ protected:
|
||||
|
||||
sp<ProcessState> ProcessState::self()
|
||||
{
|
||||
if (gProcess != NULL) return gProcess;
|
||||
|
||||
AutoMutex _l(gProcessMutex);
|
||||
if (gProcess == NULL) gProcess = new ProcessState;
|
||||
Mutex::Autolock _l(gProcessMutex);
|
||||
if (gProcess != NULL) {
|
||||
return gProcess;
|
||||
}
|
||||
gProcess = new ProcessState;
|
||||
return gProcess;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user