Какой лучший способ запустить поток, _beginthread, _beginthreadx или CreateThread?
Я пытаюсь определить, каковы преимущества/недостатки _beginthread, _beginthreadex и CreateThread. Все эти функции возвращают дескриптор потока во вновь созданный поток, я уже знаю, что CreateThread предоставляет небольшую дополнительную информацию при возникновении ошибки (ее можно проверить, вызвав GetLastError)... но какие вещи я должен рассмотреть когда я использую эти функции?
Я работаю с приложением Windows, поэтому кросс-платформенная совместимость уже не может быть и речи.
Я просмотрел документацию msdn, и я просто не понимаю, например, почему кто-то решил использовать _beginthread вместо CreateThread или наоборот.
Ура!
Обновление:
Хорошо, спасибо за всю информацию, я также прочитал несколько мест, которые я не могу назвать WaitForSingleObject(), если бы использовал _beginthread(), но если я вызываю _endthread() в потоке, это не должно работать? Какая сделка там?