📄 pthread_mutexattr_setprioceiling.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta name="generator" content="HTML Tidy, see www.w3.org"><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><link type="text/css" rel="stylesheet" href="style.css"><!-- Generated by The Open Group's rhtm tool v1.2.1 --><!-- Copyright (c) 2001-2004 IEEE and The Open Group, All Rights Reserved --><title>pthread_mutexattr_getprioceiling</title></head><body bgcolor="white"><script type="text/javascript" language="JavaScript" src="../jscript/codes.js"></script><basefont size="3"> <a name="pthread_mutexattr_getprioceiling"></a> <a name="tag_03_545"></a> <!-- pthread_mutexattr_getprioceiling --> <!--header start--><center><font size="2">The Open Group Base Specifications Issue 6<br>IEEE Std 1003.1, 2004 Edition<br>Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.</font></center><!--header end--><hr size="2" noshade><h4><a name="tag_03_545_01"></a>NAME</h4><blockquote>pthread_mutexattr_getprioceiling, pthread_mutexattr_setprioceiling - get and set the prioceiling attribute of the mutexattributes object (<b>REALTIME THREADS</b>)</blockquote><h4><a name="tag_03_545_02"></a>SYNOPSIS</h4><blockquote class="synopsis"><div class="box"><code><tt><sup>[<a href="javascript:open_code('THR TPP')">THR TPP</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0"> #include <<a href="../basedefs/pthread.h.html">pthread.h</a>><br><br> int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *<br> restrict</tt> <i>attr</i><tt>, int *restrict</tt> <i>prioceiling</i><tt>);<br> int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *</tt><i>attr</i><tt>,<br> int</tt> <i>prioceiling</i><tt>); <img src="../images/opt-end.gif" alt="[Option End]" border="0"></tt></code></div><tt><br></tt></blockquote><h4><a name="tag_03_545_03"></a>DESCRIPTION</h4><blockquote><p>The <i>pthread_mutexattr_getprioceiling</i>() and <i>pthread_mutexattr_setprioceiling</i>() functions, respectively, shall getand set the priority ceiling attribute of a mutex attributes object pointed to by <i>attr</i> which was previously created by thefunction <a href="../functions/pthread_mutexattr_init.html"><i>pthread_mutexattr_init</i>()</a>.</p><p>The <i>prioceiling</i> attribute contains the priority ceiling of initialized mutexes. The values of <i>prioceiling</i> arewithin the maximum range of priorities defined by SCHED_FIFO.</p><p>The <i>prioceiling</i> attribute defines the priority ceiling of initialized mutexes, which is the minimum priority level atwhich the critical section guarded by the mutex is executed. In order to avoid priority inversion, the priority ceiling of themutex shall be set to a priority higher than or equal to the highest priority of all the threads that may lock that mutex. Thevalues of <i>prioceiling</i> are within the maximum range of priorities defined under the SCHED_FIFO scheduling policy.</p></blockquote><h4><a name="tag_03_545_04"></a>RETURN VALUE</h4><blockquote><p>Upon successful completion, the <i>pthread_mutexattr_getprioceiling</i>() and <i>pthread_mutexattr_setprioceiling</i>()functions shall return zero; otherwise, an error number shall be returned to indicate the error.</p></blockquote><h4><a name="tag_03_545_05"></a>ERRORS</h4><blockquote><p>The <i>pthread_mutexattr_getprioceiling</i>() and <i>pthread_mutexattr_setprioceiling</i>() functions may fail if:</p><dl compact><dt>[EINVAL]</dt><dd>The value specified by <i>attr</i> or <i>prioceiling</i> is invalid.</dd><dt>[EPERM]</dt><dd>The caller does not have the privilege to perform the operation.</dd></dl><p>These functions shall not return an error code of [EINTR].</p></blockquote><hr><div class="box"><em>The following sections are informative.</em></div><h4><a name="tag_03_545_06"></a>EXAMPLES</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_03_545_07"></a>APPLICATION USAGE</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_03_545_08"></a>RATIONALE</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_03_545_09"></a>FUTURE DIRECTIONS</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_03_545_10"></a>SEE ALSO</h4><blockquote><p><a href="pthread_cond_destroy.html"><i>pthread_cond_destroy</i>()</a>, <a href="pthread_create.html"><i>pthread_create</i>()</a>, <a href="pthread_mutex_destroy.html"><i>pthread_mutex_destroy</i>()</a>, theBase Definitions volume of IEEE Std 1003.1-2001, <a href="../basedefs/pthread.h.html"><i><pthread.h></i></a></p></blockquote><h4><a name="tag_03_545_11"></a>CHANGE HISTORY</h4><blockquote><p>First released in Issue 5. Included for alignment with the POSIX Threads Extension.</p><p>Marked as part of the Realtime Threads Feature Group.</p></blockquote><h4><a name="tag_03_545_12"></a>Issue 6</h4><blockquote><p>The <i>pthread_mutexattr_getprioceiling</i>() and <i>pthread_mutexattr_setprioceiling</i>() functions are marked as part of theThreads and Thread Priority Protection options.</p><p>The [ENOSYS] error condition has been removed as stubs need not be provided if an implementation does not support the ThreadPriority Protection option.</p><p>The [ENOTSUP] error condition has been removed since these functions do not have a <i>protocol</i> argument.</p><p>The <b>restrict</b> keyword is added to the <i>pthread_mutexattr_getprioceiling</i>() prototype for alignment with theISO/IEC 9899:1999 standard.</p></blockquote><div class="box"><em>End of informative text.</em></div><hr size="2" noshade><center><font size="2"><!--footer start-->UNIX ® is a registered Trademark of The Open Group.<br>POSIX ® is a registered Trademark of The IEEE.<br>[ <a href="../mindex.html">Main Index</a> | <a href="../basedefs/contents.html">XBD</a> | <a href="../utilities/contents.html">XCU</a> | <a href="../functions/contents.html">XSH</a> | <a href="../xrat/contents.html">XRAT</a>]</font></center><!--footer end--><hr size="2" noshade></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -