Warning: main(/www/www/htdocs/style/globals.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 1
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/globals.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 1
Warning: main(/www/www/htdocs/style/header.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 8
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/header.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 8
Join a thread, with a time limit
#include <pthread.h>
int pthread_timedjoin(
pthread_t thread,
void** value_ptr,
const struct timespec* abstime );
- thread
- The target thread whose termination you're waiting for.
- value_ptr
- NULL, or a pointer to a location where the function
can store the value passed to
pthread_exit()
by the target thread.
- abstime
- A pointer to a
timespec
structure that specifies the maximum time to wait for the join,
expressed as an absolute time.
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
The pthread_timedjoin() function is similar to
pthread_join(),
except that an error of ETIMEDOUT is returned if the join
doesn't occur before the absolute time specified by abstime passes
(i.e. the system time is greater than or equal to abstime):
If you are not too long, I will wait here for you all my life.
— Oscar Wilde, The Importance of Being Earnest
The pthread_timedjoin() function blocks the calling thread
until the target thread thread terminates, unless
thread has already terminated. If value_ptr is
non-NULL and pthread_timedjoin() returns
successfully, then the value passed to pthread_exit() by
the target thread is placed in value_ptr. If the target
thread has been canceled then value_ptr is set to
PTHREAD_CANCELED.
The target thread must be joinable. Multiple
pthread_join(), pthread_timedjoin(),
ThreadJoin(), and ThreadJoin_r() calls on the
same target thread aren't
allowed. When pthread_timedjoin() returns successfully, the
target thread has been terminated.
- EOK
- Success.
- EBUSY
- The thread thread is already being joined.
- EDEADLK
- The thread thread is the calling thread.
- EFAULT
- A fault occurred trying to access the buffers provided.
- EINVAL
- The thread thread isn't joinable.
- ESRCH
- The thread thread doesn't exist.
- ETIMEDOUT
- The absolute time specified in abstime passed before the
join occurred.
QNX Neutrino
Safety: | |
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
Yes |
Thread |
Yes |
pthread_create(),
pthread_detach(),
pthread_exit(),
pthread_join(),
ThreadJoin(),
ThreadJoin_r(),
timespec
Warning: main(/www/www/htdocs/style/footer.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 190
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/footer.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_timedjoin.html on line 190