pthread.h.html
来自「unix 下的C开发手册,还用详细的例程。」· HTML 代码 · 共 219 行
HTML
219 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><html><head><!-- Copyright 1997 The Open Group, All Rights Reserved --><title><pthread.h></title></head><body bgcolor=white><center><font size=2>The Single UNIX ® Specification, Version 2<br>Copyright © 1997 The Open Group</font></center><hr size=2 noshade><h4><a name = "tag_000_007_1021"> </a>NAME</h4><blockquote>pthread.h - threads</blockquote><h4><a name = "tag_000_007_1022"> </a>SYNOPSIS</h4><blockquote><pre><code>#include <pthread.h></code></pre></blockquote><h4><a name = "tag_000_007_1023"> </a>DESCRIPTION</h4><blockquote>The<i><pthread.h></i>header defines the following symbols:<pre><code>PTHREAD_CANCEL_ASYNCHRONOUSPTHREAD_CANCEL_ENABLEPTHREAD_CANCEL_DEFERREDPTHREAD_CANCEL_DISABLEPTHREAD_CANCELEDPTHREAD_COND_INITIALIZERPTHREAD_CREATE_DETACHEDPTHREAD_CREATE_JOINABLEPTHREAD_EXPLICIT_SCHEDPTHREAD_INHERIT_SCHEDPTHREAD_MUTEX_DEFAULTPTHREAD_MUTEX_ERRORCHECKPTHREAD_MUTEX_NORMALPTHREAD_MUTEX_INITIALIZERPTHREAD_MUTEX_RECURSIVEPTHREAD_ONCE_INITPTHREAD_PRIO_INHERITPTHREAD_PRIO_NONEPTHREAD_PRIO_PROTECTPTHREAD_PROCESS_SHAREDPTHREAD_PROCESS_PRIVATEPTHREAD_RWLOCK_INITIALIZERPTHREAD_SCOPE_PROCESSPTHREAD_SCOPE_SYSTEM</code></pre><p>The<b>pthread_attr_t</b>,<b>pthread_cond_t</b>,<b>pthread_condattr_t</b>,<b>pthread_key_t</b>,<b>pthread_mutex_t</b>,<b>pthread_mutexattr_t</b>,<b>pthread_once_t</b>,<b>pthread_rwlock_t</b>,<b>pthread_rwlockattr_t</b>and<b>pthread_t</b>types are defined as described in<i><a href="systypes.h.html"><sys/types.h></a></i>.<p>The following are declared as functions and may also be declared asmacros.Function prototypes must be provided for use with an ISO Ccompiler.<pre><code>int <a href="pthread_attr_destroy.html">pthread_attr_destroy</a>(pthread_attr_t *);int <a href="pthread_attr_getdetachstate.html">pthread_attr_getdetachstate</a>(const pthread_attr_t *, int *);int <a href="pthread_attr_getguardsize.html">pthread_attr_getguardsize</a>(const pthread_attr_t *, size_t *);int <a href="pthread_attr_getinheritsched.html">pthread_attr_getinheritsched</a>(const pthread_attr_t *, int *);int <a href="pthread_attr_getschedparam.html">pthread_attr_getschedparam</a>(const pthread_attr_t *, struct sched_param *);int <a href="pthread_attr_getschedpolicy.html">pthread_attr_getschedpolicy</a>(const pthread_attr_t *, int *);int <a href="pthread_attr_getscope.html">pthread_attr_getscope</a>(const pthread_attr_t *, int *);int <a href="pthread_attr_getstackaddr.html">pthread_attr_getstackaddr</a>(const pthread_attr_t *, void **);int <a href="pthread_attr_getstacksize.html">pthread_attr_getstacksize</a>(const pthread_attr_t *, size_t *);int <a href="pthread_attr_init.html">pthread_attr_init</a>(pthread_attr_t *);int <a href="pthread_attr_setdetachstate.html">pthread_attr_setdetachstate</a>(pthread_attr_t *, int);int <a href="pthread_attr_setguardsize.html">pthread_attr_setguardsize</a>(pthread_attr_t *, size_t);int <a href="pthread_attr_setinheritsched.html">pthread_attr_setinheritsched</a>(pthread_attr_t *, int);int <a href="pthread_attr_setschedparam.html">pthread_attr_setschedparam</a>(pthread_attr_t *, const struct sched_param *);int <a href="pthread_attr_setschedpolicy.html">pthread_attr_setschedpolicy</a>(pthread_attr_t *, int);int <a href="pthread_attr_setscope.html">pthread_attr_setscope</a>(pthread_attr_t *, int);int <a href="pthread_attr_setstackaddr.html">pthread_attr_setstackaddr</a>(pthread_attr_t *, void *);int <a href="pthread_attr_setstacksize.html">pthread_attr_setstacksize</a>(pthread_attr_t *, size_t);int <a href="pthread_cancel.html">pthread_cancel</a>(pthread_t);void <a href="pthread_cleanup_push.html">pthread_cleanup_push</a>(void*), void *);void <a href="pthread_cleanup_pop.html">pthread_cleanup_pop</a>(int);int <a href="pthread_cond_broadcast.html">pthread_cond_broadcast</a>(pthread_cond_t *);int <a href="pthread_cond_destroy.html">pthread_cond_destroy</a>(pthread_cond_t *);int <a href="pthread_cond_init.html">pthread_cond_init</a>(pthread_cond_t *, const pthread_condattr_t *);int <a href="pthread_cond_signal.html">pthread_cond_signal</a>(pthread_cond_t *);int <a href="pthread_cond_timedwait.html">pthread_cond_timedwait</a>(pthread_cond_t *, pthread_mutex_t *, const struct timespec *);int <a href="pthread_cond_wait.html">pthread_cond_wait</a>(pthread_cond_t *, pthread_mutex_t *);int <a href="pthread_condattr_destroy.html">pthread_condattr_destroy</a>(pthread_condattr_t *);int <a href="pthread_condattr_getpshared.html">pthread_condattr_getpshared</a>(const pthread_condattr_t *, int *);int <a href="pthread_condattr_init.html">pthread_condattr_init</a>(pthread_condattr_t *);int <a href="pthread_condattr_setpshared.html">pthread_condattr_setpshared</a>(pthread_condattr_t *, int);int <a href="pthread_create.html">pthread_create</a>(pthread_t *, const pthread_attr_t *, void *(*)(void *), void *);int <a href="pthread_detach.html">pthread_detach</a>(pthread_t);int <a href="pthread_equal.html">pthread_equal</a>(pthread_t, pthread_t);void <a href="pthread_exit.html">pthread_exit</a>(void *);int <a href="pthread_getconcurrency.html">pthread_getconcurrency</a>(void);int <a href="pthread_getschedparam.html">pthread_getschedparam</a>(pthread_t, int *, struct sched_param *);void *<a href="pthread_getspecific.html">pthread_getspecific</a>(pthread_key_t);int <a href="pthread_join.html">pthread_join</a>(pthread_t, void **);int <a href="pthread_key_create.html">pthread_key_create</a>(pthread_key_t *, void (*)(void *));int <a href="pthread_key_delete.html">pthread_key_delete</a>(pthread_key_t);int <a href="pthread_mutex_destroy.html">pthread_mutex_destroy</a>(pthread_mutex_t *);int <a href="pthread_mutex_getprioceiling.html">pthread_mutex_getprioceiling</a>(const pthread_mutex_t *, int *);int <a href="pthread_mutex_init.html">pthread_mutex_init</a>(pthread_mutex_t *, const pthread_mutexattr_t *);int <a href="pthread_mutex_lock.html">pthread_mutex_lock</a>(pthread_mutex_t *);int <a href="pthread_mutex_setprioceiling.html">pthread_mutex_setprioceiling</a>(pthread_mutex_t *, int, int *);int <a href="pthread_mutex_trylock.html">pthread_mutex_trylock</a>(pthread_mutex_t *);int <a href="pthread_mutex_unlock.html">pthread_mutex_unlock</a>(pthread_mutex_t *);int <a href="pthread_mutexattr_destroy.html">pthread_mutexattr_destroy</a>(pthread_mutexattr_t *);int <a href="pthread_mutexattr_getprioceiling.html">pthread_mutexattr_getprioceiling</a>(const pthread_mutexattr_t *, int *);int <a href="pthread_mutexattr_getprotocol.html">pthread_mutexattr_getprotocol</a>(const pthread_mutexattr_t *, int *);int <a href="pthread_mutexattr_getpshared.html">pthread_mutexattr_getpshared</a>(const pthread_mutexattr_t *, int *);int <a href="pthread_mutexattr_gettype.html">pthread_mutexattr_gettype</a>(const pthread_mutexattr_t *, int *);int <a href="pthread_mutexattr_init.html">pthread_mutexattr_init</a>(pthread_mutexattr_t *);int <a href="pthread_mutexattr_setprioceiling.html">pthread_mutexattr_setprioceiling</a>(pthread_mutexattr_t *, int);int <a href="pthread_mutexattr_setprotocol.html">pthread_mutexattr_setprotocol</a>(pthread_mutexattr_t *, int);int <a href="pthread_mutexattr_setpshared.html">pthread_mutexattr_setpshared</a>(pthread_mutexattr_t *, int);int <a href="pthread_mutexattr_settype.html">pthread_mutexattr_settype</a>(pthread_mutexattr_t *, int);int <a href="pthread_once.html">pthread_once</a>(pthread_once_t *, void (*)(void));int <a href="pthread_rwlock_destroy.html">pthread_rwlock_destroy</a>(pthread_rwlock_t *);int <a href="pthread_rwlock_init.html">pthread_rwlock_init</a>(pthread_rwlock_t *, const pthread_rwlockattr_t *);int <a href="pthread_rwlock_rdlock.html">pthread_rwlock_rdlock</a>(pthread_rwlock_t *);int <a href="pthread_rwlock_tryrdlock.html">pthread_rwlock_tryrdlock</a>(pthread_rwlock_t *);int <a href="pthread_rwlock_trywrlock.html">pthread_rwlock_trywrlock</a>(pthread_rwlock_t *);int <a href="pthread_rwlock_unlock.html">pthread_rwlock_unlock</a>(pthread_rwlock_t *);int <a href="pthread_rwlock_wrlock.html">pthread_rwlock_wrlock</a>(pthread_rwlock_t *);int <a href="pthread_rwlockattr_destroy.html">pthread_rwlockattr_destroy</a>(pthread_rwlockattr_t *);int <a href="pthread_rwlockattr_getpshared.html">pthread_rwlockattr_getpshared</a>(const pthread_rwlockattr_t *, int *);int <a href="pthread_rwlockattr_init.html">pthread_rwlockattr_init</a>(pthread_rwlockattr_t *);int <a href="pthread_rwlockattr_setpshared.html">pthread_rwlockattr_setpshared</a>(pthread_rwlockattr_t *, int);pthread_t <a href="pthread_self.html">pthread_self</a>(void);int <a href="pthread_setcancelstate.html">pthread_setcancelstate</a>(int, int *);int <a href="pthread_setcanceltype.html">pthread_setcanceltype</a>(int, int *);int <a href="pthread_setconcurrency.html">pthread_setconcurrency</a>(int);int <a href="pthread_setschedparam.html">pthread_setschedparam</a>(pthread_t, int , const struct sched_param *);int <a href="pthread_setspecific.html">pthread_setspecific</a>(pthread_key_t, const void *);void <a href="pthread_testcancel.html">pthread_testcancel</a>(void);</code></pre><p>Inclusion of the<i><pthread.h></i>header will make visible symbols defined in the headers<i><a href="sched.h.html"><sched.h></a></i>and<i><a href="time.h.html"><time.h></a></i>.</blockquote><h4><a name = "tag_000_007_1024"> </a>APPLICATION USAGE</h4><blockquote>An interpretation request has been filed with IEEE PASC concerningrequirements for visibility of symbols in this header.</blockquote><h4><a name = "tag_000_007_1025"> </a>FUTURE DIRECTIONS</h4><blockquote>None.</blockquote><h4><a name = "tag_000_007_1026"> </a>SEE ALSO</h4><blockquote><i><a href="pthread_attr_init.html">pthread_attr_init()</a></i>,<i><a href="pthread_attr_getguardsize.html">pthread_attr_getguardsize()</a></i>,<i><a href="pthread_attr_setscope.html">pthread_attr_setscope()</a></i>,<i><a href="pthread_cancel.html">pthread_cancel()</a></i>,<i><a href="pthread_cleanup_push.html">pthread_cleanup_push()</a></i>,<i><a href="pthread_cond_init.html">pthread_cond_init()</a></i>,<i><a href="pthread_cond_signal.html">pthread_cond_signal()</a></i>,<i><a href="pthread_cond_wait.html">pthread_cond_wait()</a></i>,<i><a href="pthread_condattr_init.html">pthread_condattr_init()</a></i>,<i><a href="pthread_create.html">pthread_create()</a></i>,<i><a href="pthread_detach.html">pthread_detach()</a></i>,<i><a href="pthread_equal.html">pthread_equal()</a></i>,<i><a href="pthread_exit.html">pthread_exit()</a></i>,<i><a href="pthread_getconcurrency.html">pthread_getconcurrency()</a></i>,<i><a href="pthread_getschedparam.html">pthread_getschedparam()</a></i>,<i><a href="pthread_join.html">pthread_join()</a></i>,<i><a href="pthread_key_create.html">pthread_key_create()</a></i>,<i><a href="pthread_key_delete.html">pthread_key_delete()</a></i>,<i><a href="pthread_mutex_init.html">pthread_mutex_init()</a></i>,<i><a href="pthread_mutex_lock.html">pthread_mutex_lock()</a></i>,<i><a href="pthread_mutex_setprioceiling.html">pthread_mutex_setprioceiling()</a></i>,<i><a href="pthread_mutexattr_init.html">pthread_mutexattr_init()</a></i>,<i><a href="pthread_mutexattr_gettype.html">pthread_mutexattr_gettype()</a></i>,<i><a href="pthread_mutexattr_setprotocol.html">pthread_mutexattr_setprotocol()</a></i>,<i><a href="pthread_once.html">pthread_once()</a></i>,<i><a href="pthread_self.html">pthread_self()</a></i>,<i><a href="pthread_setcancelstate.html">pthread_setcancelstate()</a></i>,<i><a href="pthread_setspecific.html">pthread_setspecific()</a></i>,<i><a href="pthread_rwlock_init.html">pthread_rwlock_init()</a></i>,<i><a href="pthread_rwlock_rdlock.html">pthread_rwlock_rdlock()</a></i>,<i><a href="pthread_rwlock_unlock.html">pthread_rwlock_unlock()</a></i>,<i><a href="pthread_rwlock_wrlock.html">pthread_rwlock_wrlock()</a></i>,<i><a href="pthread_rwlockattr_init.html">pthread_rwlockattr_init()</a></i>,<i><a href="sched.h.html"><sched.h></a></i>,<i><a href="time.h.html"><time.h></a></i>.</blockquote><hr size=2 noshade><center><font size=2>UNIX ® is a registered Trademark of The Open Group.<br>Copyright © 1997 The Open Group<br> [ <a href="../index.html">Main Index</a> | <a href="../xshix.html">XSH</a> | <a href="../xcuix.html">XCU</a> | <a href="../xbdix.html">XBD</a> | <a href="../cursesix.html">XCURSES</a> | <a href="../xnsix.html">XNS</a> ]</font></center><hr size=2 noshade></body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?