Changeset 3717
- Timestamp:
- 02/21/06 23:35:54 (3 years ago)
- Files:
-
- libwired/trunk/libwired/thread/wi-lock.c (modified) (3 diffs)
- libwired/trunk/libwired/thread/wi-lock.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
libwired/trunk/libwired/thread/wi-lock.c
r3552 r3717 441 441 442 442 443 voidwi_condition_lock_lock_when_condition(wi_condition_lock_t *lock, int condition, wi_time_interval_t time) {443 wi_boolean_t wi_condition_lock_lock_when_condition(wi_condition_lock_t *lock, int condition, wi_time_interval_t time) { 444 444 #ifdef WI_PTHREADS 445 445 struct timespec ts; … … 455 455 err = pthread_cond_timedwait(&lock->cond, &lock->mutex, &ts); 456 456 } while(lock->condition != condition && err != ETIMEDOUT); 457 458 if(err == ETIMEDOUT) 459 return false; 457 460 } else { 458 461 do { … … 461 464 } 462 465 } 466 467 return true; 468 #else 469 return false; 463 470 #endif 464 471 } libwired/trunk/libwired/thread/wi-lock.h
r3552 r3717 81 81 82 82 WI_EXPORT void wi_condition_lock_lock(wi_condition_lock_t *); 83 WI_EXPORT voidwi_condition_lock_lock_when_condition(wi_condition_lock_t *, int, wi_time_interval_t);83 WI_EXPORT wi_boolean_t wi_condition_lock_lock_when_condition(wi_condition_lock_t *, int, wi_time_interval_t); 84 84 WI_EXPORT wi_boolean_t wi_condition_lock_trylock(wi_condition_lock_t *); 85 85 WI_EXPORT wi_boolean_t wi_condition_lock_trylock_when_condition(wi_condition_lock_t *, int);
