mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2025-10-28 10:40:38 +00:00
deploy: 8ae983971a
This commit is contained in:
@@ -46,7 +46,7 @@
|
||||
</button>
|
||||
<div class="navigation-controls--break ui-kit_mobile-only"></div>
|
||||
<div class="library-version" id="library-version">
|
||||
0.25.2 </div>
|
||||
0.25.3 </div>
|
||||
<div class="navigation-controls">
|
||||
<div class="filter-section filter-section_loading" id="filter-section">
|
||||
<button class="platform-tag platform-selector jvm-like" data-active=""
|
||||
@@ -266,6 +266,21 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="77953360%2FClasslikes%2F-1478683138" anchor-label="SmartKeyRWLocker" id="77953360%2FClasslikes%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="-smart-key-r-w-locker/index.html"><span>Smart</span><wbr></wbr><span>Key</span><wbr></wbr><span><span>RWLocker</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="77953360%2FClasslikes%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="-smart-key-r-w-locker/index.html">T</a><span class="token operator">></span><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">globalLockerReadPermits<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html">Int</a><span class="token operator"> = </span>Int.MAX_VALUE<span class="token punctuation">, </span></span><span class="parameter ">globalLockerWriteIsLocked<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">perKeyReadPermits<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html">Int</a><span class="token operator"> = </span>Int.MAX_VALUE</span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">Combining <span data-unresolved-link="dev.inmo.micro_utils.coroutines/SmartKeyRWLocker/globalRWLocker/#/PointingToDeclaration/">globalRWLocker</span> and internal map of <a href="-smart-r-w-locker/index.html">SmartRWLocker</a> associated by <a href="-smart-key-r-w-locker/index.html">T</a> to provide next logic:</p></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="1070794381%2FClasslikes%2F-1478683138" anchor-label="SmartMutex" id="1070794381%2FClasslikes%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
@@ -486,6 +501,36 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-456085756%2FFunctions%2F-1478683138" anchor-label="alsoWithUnlockingOnSuccess" id="-456085756%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="also-with-unlocking-on-success.html"><span>also</span><wbr></wbr><span>With</span><wbr></wbr><span>Unlocking</span><wbr></wbr><span>On</span><wbr></wbr><span><span>Success</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-456085756%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><a href="also-with-unlocking-on-success.html"><span class="token function">alsoWithUnlockingOnSuccess</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">vararg </span>lockers<span class="token operator">: </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-result/index.html">Result</a><span class="token operator"><</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">></span></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-355672445%2FFunctions%2F-1478683138" anchor-label="alsoWithUnlockingOnSuccessAsync" id="-355672445%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="also-with-unlocking-on-success-async.html"><span>also</span><wbr></wbr><span>With</span><wbr></wbr><span>Unlocking</span><wbr></wbr><span>On</span><wbr></wbr><span>Success</span><wbr></wbr><span><span>Async</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-355672445%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="also-with-unlocking-on-success-async.html"><span class="token function">alsoWithUnlockingOnSuccessAsync</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">vararg </span>lockers<span class="token operator">: </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="1914291283%2FFunctions%2F-1478683138" anchor-label="asyncLogging" id="1914291283%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
@@ -1418,7 +1463,7 @@
|
||||
<div class="title">
|
||||
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
|
||||
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":micro_utils.dokka:dokkaHtml/jsMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/jsMain" data-active="" data-toggle=":micro_utils.dokka:dokkaHtml/jsMain">js</button></div>
|
||||
<div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/jsMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/org.w3c.files/-blob/index.html">Blob</a><span class="token punctuation">.</span><a href="to-byte-array.html"><span class="token function">toByteArray</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html">ByteArray</a></div></div> </div>
|
||||
<div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/jsMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span data-unresolved-link="org.w3c.files/Blob///PointingToDeclaration/">Blob</span><span class="token punctuation">.</span><a href="to-byte-array.html"><span class="token function">toByteArray</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html">ByteArray</a></div></div> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1470,6 +1515,21 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="1821739093%2FFunctions%2F-1478683138" anchor-label="waitReleaseAll" id="1821739093%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="wait-release-all.html"><span>wait</span><wbr></wbr><span>Release</span><wbr></wbr><span><span>All</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1821739093%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="-smart-semaphore/index.html">SmartSemaphore</a><span class="token punctuation">.</span><a href="wait-release-all.html"><span class="token function">waitReleaseAll</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html">Int</a></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-2110023258%2FFunctions%2F-1478683138" anchor-label="waitUnlock" id="-2110023258%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
@@ -1545,32 +1605,62 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-108893048%2FFunctions%2F-1478683138" anchor-label="withReadAcquire" id="-108893048%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<a data-name="885611399%2FFunctions%2F-1478683138" anchor-label="withReadAcquire" id="885611399%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="with-read-acquire.html"><span>with</span><wbr></wbr><span>Read</span><wbr></wbr><span><span>Acquire</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-108893048%2FFunctions%2F-1478683138"></span>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="885611399%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token operator">> </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">.</span><a href="with-read-acquire.html"><span class="token function">withReadAcquire</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquire.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquire.html">T</a></div><div class="brief "><p class="paragraph">Will call SmartSemaphore.Mutable.lock, then execute <a href="with-read-acquire.html">action</a> and return the result after SmartSemaphore.Mutable.unlock</p></div></div></div>
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token punctuation">, </span><a href="with-read-acquire.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-read-acquire.html"><span class="token function">withReadAcquire</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquire.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquire.html">R</a></div><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token punctuation">, </span><a href="with-read-acquire.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-read-acquire.html"><span class="token function">withReadAcquire</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">key<span class="token operator">: </span><a href="with-read-acquire.html">T</a><span class="token punctuation">, </span></span><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquire.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquire.html">R</a></div><br><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquire.html">T</a><span class="token operator">> </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">.</span><a href="with-read-acquire.html"><span class="token function">withReadAcquire</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquire.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquire.html">T</a></div><div class="brief "><p class="paragraph">Will call SmartSemaphore.Mutable.lock, then execute <a href="with-read-acquire.html">action</a> and return the result after SmartSemaphore.Mutable.unlock</p></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-184649794%2FFunctions%2F-1478683138" anchor-label="withWriteLock" id="-184649794%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<a data-name="747579952%2FFunctions%2F-1478683138" anchor-label="withReadAcquires" id="747579952%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="with-write-lock.html"><span>with</span><wbr></wbr><span>Write</span><wbr></wbr><span><span>Lock</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-184649794%2FFunctions%2F-1478683138"></span>
|
||||
<div><a href="with-read-acquires.html"><span>with</span><wbr></wbr><span>Read</span><wbr></wbr><span><span>Acquires</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="747579952%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token operator">> </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">.</span><a href="with-write-lock.html"><span class="token function">withWriteLock</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-write-lock.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-write-lock.html">T</a></div><div class="brief "><p class="paragraph">Will call <a href="-smart-mutex/-mutable/lock.html">SmartMutex.Mutable.lock</a>, then execute <a href="with-write-lock.html">action</a> and return the result after <a href="-smart-mutex/-mutable/unlock.html">SmartMutex.Mutable.unlock</a></p></div></div></div>
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquires.html">T</a><span class="token punctuation">, </span><a href="with-read-acquires.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-read-acquires.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-read-acquires.html"><span class="token function">withReadAcquires</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">vararg </span>keys<span class="token operator">: </span><a href="with-read-acquires.html">T</a><span class="token punctuation">, </span></span><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquires.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquires.html">R</a></div><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-read-acquires.html">T</a><span class="token punctuation">, </span><a href="with-read-acquires.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-read-acquires.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-read-acquires.html"><span class="token function">withReadAcquires</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">keys<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html">Iterable</a><span class="token operator"><</span><a href="with-read-acquires.html">T</a><span class="token operator">></span><span class="token punctuation">, </span></span><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-read-acquires.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-read-acquires.html">R</a></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-1270953923%2FFunctions%2F-1478683138" anchor-label="withWriteLock" id="-1270953923%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="with-write-lock.html"><span>with</span><wbr></wbr><span>Write</span><wbr></wbr><span><span>Lock</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1270953923%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token punctuation">, </span><a href="with-write-lock.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-write-lock.html"><span class="token function">withWriteLock</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-write-lock.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-write-lock.html">R</a></div><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token punctuation">, </span><a href="with-write-lock.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-write-lock.html"><span class="token function">withWriteLock</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">key<span class="token operator">: </span><a href="with-write-lock.html">T</a><span class="token punctuation">, </span></span><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-write-lock.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-write-lock.html">R</a></div><br><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-write-lock.html">T</a><span class="token operator">> </span><a href="-smart-r-w-locker/index.html">SmartRWLocker</a><span class="token punctuation">.</span><a href="with-write-lock.html"><span class="token function">withWriteLock</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-write-lock.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-write-lock.html">T</a></div><div class="brief "><p class="paragraph">Will call <a href="-smart-mutex/-mutable/lock.html">SmartMutex.Mutable.lock</a>, then execute <a href="with-write-lock.html">action</a> and return the result after <a href="-smart-mutex/-mutable/unlock.html">SmartMutex.Mutable.unlock</a></p></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-name="-736280607%2FFunctions%2F-1478683138" anchor-label="withWriteLocks" id="-736280607%2FFunctions%2F-1478683138" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain"></a>
|
||||
<div class="table-row" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set=":micro_utils.dokka:dokkaHtml/commonMain">
|
||||
<div class="main-subrow keyValue ">
|
||||
<div class=""><span class="inline-flex">
|
||||
<div><a href="with-write-locks.html"><span>with</span><wbr></wbr><span>Write</span><wbr></wbr><span><span>Locks</span></span></a></div>
|
||||
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-736280607%2FFunctions%2F-1478683138"></span>
|
||||
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
|
||||
</span></span></div>
|
||||
<div>
|
||||
<div class="title">
|
||||
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":micro_utils.dokka:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline suspend </span><span class="token keyword">fun </span><span class="token operator"><</span><a href="with-write-locks.html">T</a><span class="token punctuation">, </span><a href="with-write-locks.html">R</a><span class="token operator">> </span><a href="-smart-key-r-w-locker/index.html">SmartKeyRWLocker</a><span class="token operator"><</span><a href="with-write-locks.html">T</a><span class="token operator">></span><span class="token punctuation">.</span><a href="with-write-locks.html"><span class="token function">withWriteLocks</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">keys<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html">Iterable</a><span class="token operator"><</span><a href="with-write-locks.html">T</a><span class="token operator">></span><span class="token punctuation">, </span></span><span class="parameter ">action<span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -> </span><a href="with-write-locks.html">R</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="with-write-locks.html">R</a></div></div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user