2e1318f691
The QSemaphore acquire & release functions, plus the constructor and destructor, can be made noexcept on platforms that use futexes (currently, Linux and Windows; likely macOS by the time we make 7.0). I didn't make the change right now because the acquire and release functions have narrow contracts on the int n values. I didn't make that change now because it make a mess of the code, for little gain as this class isn't used that often. Plus, we may want to investigate whether we want to keep the multi-token semaphore functionality around (something neither POSIX sem_t nor std::counting_semaphore have), or split that off into a separate class like QBasicMutex / QMutex / QRecursiveMutex was done. Change-Id: Ieab617d69f3b4b54ab30fffd175b27813728f2ce Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Ahmad Samir <a.samirh78@gmail.com> |
||
---|---|---|
.github/workflows | ||
bin | ||
cmake | ||
coin | ||
config.tests | ||
dist | ||
doc | ||
examples | ||
lib | ||
libexec | ||
LICENSES | ||
mkspecs | ||
qmake | ||
src | ||
tests | ||
util | ||
.cmake.conf | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
.tag | ||
CMakeLists.txt | ||
conanfile.py | ||
config_help.txt | ||
configure | ||
configure.bat | ||
configure.cmake | ||
dependencies.yaml | ||
qt_cmdline.cmake | ||
sync.profile |