Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2007, 2009 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2007 Justin Haygood (jhaygood@reaktix.com) | 3 * Copyright (C) 2007 Justin Haygood (jhaygood@reaktix.com) |
| 4 * Copyright (C) 2011 Research In Motion Limited. All rights reserved. | 4 * Copyright (C) 2011 Research In Motion Limited. All rights reserved. |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * | 9 * |
| 10 * 1. Redistributions of source code must retain the above copyright | 10 * 1. Redistributions of source code must retain the above copyright |
| (...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 239 int result = pthread_cond_signal(&m_condition); | 239 int result = pthread_cond_signal(&m_condition); |
| 240 ASSERT_UNUSED(result, !result); | 240 ASSERT_UNUSED(result, !result); |
| 241 } | 241 } |
| 242 | 242 |
| 243 void ThreadCondition::broadcast() | 243 void ThreadCondition::broadcast() |
| 244 { | 244 { |
| 245 int result = pthread_cond_broadcast(&m_condition); | 245 int result = pthread_cond_broadcast(&m_condition); |
| 246 ASSERT_UNUSED(result, !result); | 246 ASSERT_UNUSED(result, !result); |
| 247 } | 247 } |
| 248 | 248 |
| 249 #if ENABLE(ASSERT) | |
| 250 static bool s_threadCreated = false; | |
| 251 | |
| 252 struct ThreadCreationRecorder { | |
| 253 ThreadCreationRecorder() | |
| 254 { | |
| 255 ASSERT(!s_threadCreated); | |
|
eroman
2015/01/30 18:02:30
Not sure how valuable this assertion is. Probably
kinuko
2015/02/03 06:57:34
Done.
| |
| 256 s_threadCreated = true; | |
| 257 } | |
| 258 }; | |
| 259 | |
| 260 bool isAtomicallyInitializedStaticMutexLockHeld() | |
| 261 { | |
| 262 return atomicallyInitializedStaticMutex && atomicallyInitializedStaticMutex- >locked(); | |
| 263 } | |
| 264 | |
| 265 bool isBeforeThreadCreated() | |
| 266 { | |
| 267 return !s_threadCreated; | |
| 268 } | |
| 269 | |
| 270 void willCreateThread() | |
| 271 { | |
| 272 static ThreadCreationRecorder recorder; | |
| 273 } | |
| 274 #endif | |
| 275 | |
| 249 } // namespace WTF | 276 } // namespace WTF |
| 250 | 277 |
| 251 #endif // USE(PTHREADS) | 278 #endif // USE(PTHREADS) |
| OLD | NEW |