Changeset 44651 in webkit for trunk/JavaScriptCore/wtf/ThreadingPthreads.cpp
- Timestamp:
- Jun 13, 2009, 10:52:44 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/wtf/ThreadingPthreads.cpp
r44504 r44651 268 268 } 269 269 270 271 ReadWriteLock::ReadWriteLock() 272 { 273 pthread_rwlock_init(&m_readWriteLock, NULL); 274 } 275 276 ReadWriteLock::~ReadWriteLock() 277 { 278 pthread_rwlock_destroy(&m_readWriteLock); 279 } 280 281 void ReadWriteLock::readLock() 282 { 283 int result = pthread_rwlock_rdlock(&m_readWriteLock); 284 ASSERT_UNUSED(result, !result); 285 } 286 287 bool ReadWriteLock::tryReadLock() 288 { 289 int result = pthread_rwlock_tryrdlock(&m_readWriteLock); 290 291 if (result == 0) 292 return true; 293 if (result == EBUSY || result == EAGAIN) 294 return false; 295 296 ASSERT_NOT_REACHED(); 297 return false; 298 } 299 300 void ReadWriteLock::writeLock() 301 { 302 int result = pthread_rwlock_wrlock(&m_readWriteLock); 303 ASSERT_UNUSED(result, !result); 304 } 305 306 bool ReadWriteLock::tryWriteLock() 307 { 308 int result = pthread_rwlock_trywrlock(&m_readWriteLock); 309 310 if (result == 0) 311 return true; 312 if (result == EBUSY || result == EAGAIN) 313 return false; 314 315 ASSERT_NOT_REACHED(); 316 return false; 317 } 318 319 void ReadWriteLock::unlock() 320 { 321 int result = pthread_rwlock_unlock(&m_readWriteLock); 322 ASSERT_UNUSED(result, !result); 323 } 324 270 325 ThreadCondition::ThreadCondition() 271 326 {
Note:
See TracChangeset
for help on using the changeset viewer.