Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
src_corelib_kernel_qsystemsemaphore.cpp
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
3
5QSystemSemaphore sem(QSystemSemaphore::platformSafeKey("market"), 3, QSystemSemaphore::Create);
6 // resources available == 3
7sem.acquire(); // resources available == 2
8sem.acquire(); // resources available == 1
9sem.acquire(); // resources available == 0
10sem.release(); // resources available == 1
11sem.release(2); // resources available == 3
13
14
16QSystemSemaphore sem(QSystemSemaphore::platformSafeKey("market"), 5, QSystemSemaphore::Create);
17for (int i = 0; i < 5; ++i) // acquire all 5 resources
18 sem.acquire();
19sem.release(5); // release the 5 resources
21
22
24sem.release(10); // "create" 10 new resources
void acquire(int n=1)
Tries to acquire n resources guarded by the semaphore.
void release(int n=1)
Releases n resources guarded by the semaphore.
QSemaphore sem(5)
[0]