什么将替代的pthread_setcanceltype在windows的线程编程在c + +?

什么将替代的pthread_setcanceltype在windows的线程编程在c + +

Windows线程没有取消点,所以没有系统取消类型来考虑。

因此,在Windows上“取消”一个线程意味着你,开发者需要提出一个告诉线程退出的策略。 如果它是一个GUI线程,你可以发布一个WM_QUIT消息。 如果它是一个非GUI线程,那么它确实取决于线程在做什么。 你需要分析线程,看看你的代码是否可以明确地检查是否需要继续下去,或退出。

有一个pthreads-win32实现可用,如果你想避免这个问题,并在Win32上获得pthreads投诉行为。

你可以使用事件作为同步对象。 检查你的线程,时不时的事件的状态(WaitForSingleObject与零超时),如果它是信号,返回从线程的主要功能。 要从外部取消线程,只需设置事件。