Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
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
6void example()
7{
8 {
9 //! [0]
10 QSystemSemaphore sem(QSystemSemaphore::platformSafeKey("market"), 3, QSystemSemaphore::Create);
11 // resources available == 3
12 sem.acquire(); // resources available == 2
13 sem.acquire(); // resources available == 1
14 sem.acquire(); // resources available == 0
15 sem.release(); // resources available == 1
16 sem.release(2); // resources available == 3
17 //! [0]
18 }
19
20 {
21 //! [1]
22 QSystemSemaphore sem(QSystemSemaphore::platformSafeKey("market"), 5, QSystemSemaphore::Create);
23 for (int i = 0; i < 5; ++i) // acquire all 5 resources
24 sem.acquire();
25 sem.release(5); // release the 5 resources
26 //! [1]
27 }
28
29 {
30 QSystemSemaphore sem(QSystemSemaphore::platformSafeKey("market"), 0, QSystemSemaphore::Create);
31
32 //! [2]
33 sem.release(10); // "create" 10 new resources
34 //! [2]
35 }
36}
void example()
[5]