gpt4 book ai didi

c++ - 我应该使用来自 C++ 标准还是来自 Windows API 的条件变量?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:29:19 25 4
gpt4 key购买 nike

在 Win32 C++ 程序中实现条件变量时,最好使用 Win32 函数、类和数据类型(例如 CreateThreadSleepConditionVariableCS WaitForSingleObjectExReleaseMutexCONDITION_VARIABLE)或来自 C++11 标准库(例如 threadwait, 加入, 解锁, condition_variable)?

既然这个问题的答案可能不是二元的,那么在做出这样的决定时应该考虑哪些因素?

最佳答案

C++ 同步机制是根据 C++ 原则设计的。他们在析构函数中释放资源,他们还使用 RAII 来确保安全锁定。他们使用异常来指示错误。

本质上,它们比基于函数的 native Windows API 更难被错误使用。这意味着如果您可以使用它们(您的实现支持它们),您就应该始终使用它们。

哦,它们是跨平台的。

关于c++ - 我应该使用来自 C++ 标准还是来自 Windows API 的条件变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21385705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com