̾??
pthread_rwlock_rdlock
,
pthread_rwlock_tryrdlock
—
?ɼ????Ѥ??ɼ??? /
?????ߥ??å??γ???
Reentrant C Library (libc_r,
-lc_r)
pthread_rwlock_rdlock
()
?ؿ??ϡ? lock
??Ϳ?????줿?????å??????߽??????Ѥ??ݻ??????Ƥ??餺???????ߥ????åɤ?
???ߤ??Υ??å??ǥ֥??å??????Ƥ??ʤ????ɼ????ѤΥ??å??????????ޤ???
?ɼ????ѤΥ??å????˳????Ǥ??ʤ??????ˤϡ??ƤӽФ??Ƥ??륹???åɤ?
???Υ??å????????Ǥ????ޤǥ֥??å????ޤ???
pthread_rwlock_tryrdlock
()
?ؿ??ϡ?Ʊ?????????¹Ԥ??ޤ??????????˥??å????????Ǥ??ʤ?
(???ʤ?????
???å??????????Ѥ??ݻ??????Ƥ??롢
?ޤ????ԤäƤ????????ߥ????åɤ?????)
?????ˤϡ??֥??å????ޤ?????
1
?ĤΥ????åɤ?ʣ????Ʊ?????ɼ????ѥ??å????ݻ????뤳?Ȥ??Ǥ??ޤ???
???ξ????ˤϡ??ġ??γ??????줿?Τ?????
pthread_rwlock_unlock
()
?? 1
?٤??ĸƤӽФ????ʤ????Фʤ??ޤ?????
?ƤӽФ??Ƥ??륹???åɤ????????ѤΥ??å????ݻ????Ƥ????֤Ρ?
?ɼ????ѤΥ??å??γ????η??̤ϡ?̤?????Ǥ???
??????¦?ε??????֤??ɤ????ᡢ??????¦???ɹ???¦??????ͥ?褵???ޤ???
???꤬?ʤ??????ϡ?
pthread_rwlock_rdlock
()
?????? pthread_rwlock_tryrdlock
() ?ؿ??? 0
???֤??ޤ???
???꤬?????????ϡ????Υ??顼???????˥??顼?ֹ椬?֤????ޤ???
pthread_rwlock_rdlock
() ??????
pthread_rwlock_tryrdlock
() ?ؿ??ϡ?
Version 2 of the Single UNIX Specification
(“SUSv2”)
??Ŭ?礷?Ƥ????Ϥ??Ǥ???
pthread_rwlock_tryrdlock
()
?ؿ??ϡ??ʲ??ξ????˼??Ԥ??ޤ???
- [
EBUSY
]
- ?????ߥ????åɤ????å????ݻ????Ƥ??롢?ޤ??ϥ֥??å??????Ƥ??뤿?ᡢ
???å????????Ǥ??ޤ?????
pthread_rwlock_rdlock
()
?????? pthread_rwlock_tryrdlock
()
?ؿ??ϡ??ʲ??ξ????˼??Ԥ??뤳?Ȥ??????ޤ???
- [
EAGAIN
]
- lock
???Ф????ɼ????ѤΥ??å??κ??????????˱ۤ??Ƥ??뤿?ᡢ
???å????????Ǥ??ޤ?????
- [
EDEADLK
]
- ???ߤΥ????åɤ????˽??????Ѥ?
lock ????ͭ???Ƥ??ޤ???
- [
EINVAL
]
- lock
?ˤ??äƻ??ꤵ?줿?ͤ?̵???Ǥ???
- [
ENOMEM
]
- ???å?
(??Ū?˽????????줿???å??Τߤ?Ŭ??)
?ν??????Τ?????
??ʬ?ʥ????꤬?????ޤ?????
pthread_rwlock_rdlock
()
?ؿ??ϡ? FreeBSD 3.0
?ǤϤ??????о줷?ޤ?????