c++ - Visual Studio 线程 - afxwin 还是 C++11 线程?

标签 c++ multithreading winapi c++11 visual-studio-2013

在 Visual Studio 2013 中的 Windows 上,我认为 C++11 线程比线程更好,因为代码是平台无关的(编译器支持 C++11)。

找不到任何人讨论两者之间的差异。

想知道使用 afxwin.h 是否有任何优势,或者它现在是否真的只是为了向后兼容。

不熟悉 Windows 编程,因此担心可能有一些理由坚持使用 afxwin.h...

最佳答案

C++11 线程更容易使用,因此在可能的情况下它们可能更可取。

直接使用 Win32 线程可以为您提供一些 C++11 线程所不提供的功能,例如暂停线程、调整线程优先级等。

请注意,您可以将两者结合起来 - 您可以使用 C++11 函数创建一个线程,然后使用 native_handle 成员函数获取 Win32 句柄到线程,以便您可以以 C++11 库不直接支持的方式操作它。不过,这可能并不经常需要。

关于c++ - Visual Studio 线程 - afxwin 还是 C++11 线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29325276/

相关文章:

c++ - Visual Studio 2015 Natvis 如何显示函数静态变量?

C++ 可变参数模板打包到 std::array 并解包

c++ - 圆弧计算点

multithreading - Openmp创建许多线程,但似乎只使用一个内核

java - 我使用计时器无缘无故地陷入了 for 循环

c++ - 如何将 Visual Studio 项目从使用宽字符串转换为普通字符串

在运行时更改标签颜色

c++ - 加载 QPixmap 数据的更好方法

java - 线程安全和线程兼容有什么区别?

python - 如何使用 win32 在 Windows 中创建窗口焦点监听器