Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
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
4
#
include
<
QSystemSemaphore
>
5
6
#
if
QT_CONFIG
(
systemsemaphore
)
7
8
void
example()
9
{
10
{
11
//! [0]
12
QSystemSemaphore sem(QSystemSemaphore::platformSafeKey(
"market"
), 3, QSystemSemaphore::Create);
13
// resources available == 3
14
sem.acquire();
// resources available == 2
15
sem.acquire();
// resources available == 1
16
sem.acquire();
// resources available == 0
17
sem.release();
// resources available == 1
18
sem.release(2);
// resources available == 3
19
//! [0]
20
}
21
22
{
23
//! [1]
24
QSystemSemaphore sem(QSystemSemaphore::platformSafeKey(
"market"
), 5, QSystemSemaphore::Create);
25
for
(
int
i = 0; i < 5; ++i)
// acquire all 5 resources
26
sem.acquire();
27
sem.release(5);
// release the 5 resources
28
//! [1]
29
}
30
31
{
32
QSystemSemaphore sem(QSystemSemaphore::platformSafeKey(
"market"
), 0, QSystemSemaphore::Create);
33
34
//! [2]
35
sem.release(10);
// "create" 10 new resources
36
//! [2]
37
}
38
}
39
40
#
endif
// systemsemaphore
qtbase
src
corelib
doc
snippets
code
src_corelib_kernel_qsystemsemaphore.cpp
Generated on
for Qt by
1.18.0