.\" Copyright (c) 1997 Brian Cully .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. Neither the name of the author nor the names of any co-contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY JOHN BIRRELL AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd July 28, 1998 .Dt PTHREAD_COND_TIMEDWAIT 3 .Os BSD 4 .Sh 名称 .Nm pthread_cond_timedwait .Nd 指定時間、条件変数を待つ .Sh 書式 .Fd #include .Ft int .Fn pthread_cond_timedwait "pthread_cond_t *cond" "pthread_mutex_t *mutex" "const struct timespec *abstime" .Sh 解説 .Fn pthread_cond_timedwait 関数は、 .Fa cond で指定された条件変数を待つことで現行スレッドをアトミックにブロックし、 .Fa mutex で指定された MUTEX のブロックを解除します。待機しているスレッドのブロックは、 別のスレッドが .Xr pthread_cond_signal 3 か .Xr pthread_cond_broadcast 3 を同じ条件変数で呼び出した場合、または .Fa abstime で指定された時間にシステム時間が達した場合に解除されます。 解除されると、現行スレッドは .Fa mutex をロックします。 .Sh 戻り値 問題がない場合、 .Fn pthread_cond_timedwait 関数は 0 を戻します。問題がある場合は、そのエラーを示すエラー番号を戻します。 .Sh エラー .Fn pthread_cond_timedwait は、以下のような場合にエラーとなります。 .Bl -tag -width Er .It Bq Er EINVAL .Fa cond で指定された値、または .Fa attr で指定された値が正しくない場合 .It Bq Er ETIMEDOUT .Fa abstime で指定された時間にシステム時間が達したか越えた場合 .El .Pp .Sh 関連項目 .Xr pthread_cond_broadcast 3 , .Xr pthread_cond_destroy 3 , .Xr pthread_cond_init 3 , .Xr pthread_cond_signal 3 , .Xr pthread_cond_wait 3 .Sh 規格 .Fn pthread_cond_timedwait は、 ISO/IEC 9945-1 ANSI/IEEE .Pq Dq Tn POSIX Std 1003.1 Second Edition 1996-07-12 に準拠しています。