Windows 线程:_Beginthread、_Beginthreadex 与 C 的 CreateThread
在 Windows 应用程序中创建线程时,您可以选择:使用 _beginthread、_beginthreadex 或 CreateThread。了解每种方法的优缺点可以帮助您做出明智的决定。
_Beginthread、_Beginthreadex 和 CreateThread 之间的区别
_Beginthreadex 的优点CreateThread
在 C 中,一般建议使用 _beginthreadex 而不是 CreateThread。 _Beginthreadex 提供了几个优点:
何时使用 _Beginthread
_Beginthread 是 _beginthreadex 的旧版本、功能较少的版本。大多数情况下不建议使用。
WaitForSingleObject 和 _Beginthread
如果使用 _beginthread,则无法使用 WaitForSingleObject() 等待线程完成。但是,如果您在线程中调用 _endthread(),C 运行时库将执行清理并使 WaitForSingleObject() 可用。
结论
对于大多数 C 应用程序, _beginthreadex 是创建和管理线程的首选。它提供了一个用户友好的界面,处理 C 运行时库初始化,并允许您指定线程的堆栈大小。
以上是_Beginthread、_Beginthreadex 或 CreateThread:我应该使用哪个 C 线程创建函数?的详细内容。更多信息请关注PHP中文网其他相关文章!