You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
110 lines
7.8 KiB
110 lines
7.8 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.4"/>
|
|
<title>tbb::recursive_mutex::scoped_lock Class Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.4 -->
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
|
<li><a href="modules.html"><span>Modules</span></a></li>
|
|
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
|
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<div id="navrow2" class="tabs2">
|
|
<ul class="tablist">
|
|
<li><a href="annotated.html"><span>Class List</span></a></li>
|
|
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
|
<li><a href="functions.html"><span>Class Members</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="a00222.html">tbb</a></li><li class="navelem"><a class="el" href="a00107.html">recursive_mutex</a></li><li class="navelem"><a class="el" href="a00120.html">scoped_lock</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#friends">Friends</a> |
|
|
<a href="a00276.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">tbb::recursive_mutex::scoped_lock Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>The scoped locking pattern.
|
|
<a href="a00120.html#details">More...</a></p>
|
|
|
|
<p><code>#include <recursive_mutex.h></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for tbb::recursive_mutex::scoped_lock:</div>
|
|
<div class="dyncontent">
|
|
<div class="center">
|
|
<img src="a00120.png" usemap="#tbb::recursive_mutex::scoped_lock_map" alt=""/>
|
|
<map id="tbb::recursive_mutex::scoped_lock_map" name="tbb::recursive_mutex::scoped_lock_map">
|
|
</map>
|
|
</div></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a0a9962a3932cfbd0d12cb197494f951b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a9962a3932cfbd0d12cb197494f951b"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#a0a9962a3932cfbd0d12cb197494f951b">scoped_lock</a> ()</td></tr>
|
|
<tr class="memdesc:a0a9962a3932cfbd0d12cb197494f951b"><td class="mdescLeft"> </td><td class="mdescRight">Construct lock that has not acquired a <a class="el" href="a00107.html">recursive_mutex</a>. <br/></td></tr>
|
|
<tr class="separator:a0a9962a3932cfbd0d12cb197494f951b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab42cb541abb9647cac23b1db9a4db93d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab42cb541abb9647cac23b1db9a4db93d"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#ab42cb541abb9647cac23b1db9a4db93d">scoped_lock</a> (<a class="el" href="a00107.html">recursive_mutex</a> &<a class="el" href="a00081.html">mutex</a>)</td></tr>
|
|
<tr class="memdesc:ab42cb541abb9647cac23b1db9a4db93d"><td class="mdescLeft"> </td><td class="mdescRight">Acquire lock on given mutex. <br/></td></tr>
|
|
<tr class="separator:ab42cb541abb9647cac23b1db9a4db93d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a90a966e19120aac99b36a3d6d04af1a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90a966e19120aac99b36a3d6d04af1a2"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#a90a966e19120aac99b36a3d6d04af1a2">~scoped_lock</a> ()</td></tr>
|
|
<tr class="memdesc:a90a966e19120aac99b36a3d6d04af1a2"><td class="mdescLeft"> </td><td class="mdescRight">Release lock (if lock is held). <br/></td></tr>
|
|
<tr class="separator:a90a966e19120aac99b36a3d6d04af1a2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac5450ce6a5813f395afaa434384c6539"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5450ce6a5813f395afaa434384c6539"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#ac5450ce6a5813f395afaa434384c6539">acquire</a> (<a class="el" href="a00107.html">recursive_mutex</a> &<a class="el" href="a00081.html">mutex</a>)</td></tr>
|
|
<tr class="memdesc:ac5450ce6a5813f395afaa434384c6539"><td class="mdescLeft"> </td><td class="mdescRight">Acquire lock on given mutex. <br/></td></tr>
|
|
<tr class="separator:ac5450ce6a5813f395afaa434384c6539"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a160bba506f4033980ddb69ab7a02c4fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a160bba506f4033980ddb69ab7a02c4fb"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#a160bba506f4033980ddb69ab7a02c4fb">try_acquire</a> (<a class="el" href="a00107.html">recursive_mutex</a> &<a class="el" href="a00081.html">mutex</a>)</td></tr>
|
|
<tr class="memdesc:a160bba506f4033980ddb69ab7a02c4fb"><td class="mdescLeft"> </td><td class="mdescRight">Try acquire lock on given <a class="el" href="a00107.html">recursive_mutex</a>. <br/></td></tr>
|
|
<tr class="separator:a160bba506f4033980ddb69ab7a02c4fb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2fe3246ffc26bdb5a58f33ca513b6c0f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fe3246ffc26bdb5a58f33ca513b6c0f"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html#a2fe3246ffc26bdb5a58f33ca513b6c0f">release</a> ()</td></tr>
|
|
<tr class="memdesc:a2fe3246ffc26bdb5a58f33ca513b6c0f"><td class="mdescLeft"> </td><td class="mdescRight">Release lock. <br/></td></tr>
|
|
<tr class="separator:a2fe3246ffc26bdb5a58f33ca513b6c0f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
|
Friends</h2></td></tr>
|
|
<tr class="memitem:a1bdb637fe5c9412323bf92846b40682e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1bdb637fe5c9412323bf92846b40682e"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>recursive_mutex</b></td></tr>
|
|
<tr class="separator:a1bdb637fe5c9412323bf92846b40682e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>The scoped locking pattern. </p>
|
|
<p>It helps to avoid the common problem of forgetting to release lock. It also nicely provides the "node" for queuing locks. </p>
|
|
</div><hr/>The documentation for this class was generated from the following file:<ul>
|
|
<li>recursive_mutex.h</li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<hr>
|
|
<p></p>
|
|
Copyright © 2005-2014 Intel Corporation. All Rights Reserved.
|
|
<p></p>
|
|
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are
|
|
registered trademarks or trademarks of Intel Corporation or its
|
|
subsidiaries in the United States and other countries.
|
|
<p></p>
|
|
* Other names and brands may be claimed as the property of others.
|