Beginthread - Beginthread
В beginthread функция создает новый поток исполнения в рамках текущего процесса. Это часть Майкрософт Виндоус библиотека времени исполнения и является объявлен в process.h заголовочный файл.
Прототип
беззнаковый длинный _beginthread(пустота(* Func)(пустота*), беззнаковый Stack_size, пустота *Arg);
Func
Выполнение потока начинается с начала функции func
. Чтобы правильно завершить поток, func
должен позвонить _endthread
или закончить "return 0", освобождая память, выделенную библиотекой времени выполнения для поддержки потока.
Stack_size
Операционная система выделяет стек для потока, содержащий количество байтов, указанное в stack_size
. Если значение stack_size
равен нулю, операционная система создает стек того же размера, что и у основного потока.[1]
Arg
Операционная система передает Arg функции Func, когда начинается выполнение. Arg
может быть любое 32-битное значение, приведенное к void *.
Возвращаемое значение
Возвращает дескриптор операционной системы вновь созданного потока. В случае неудачи функция возвращает -1 и устанавливает errno.
Переключатели компилятора
Чтобы скомпилировать программу с использованием нескольких потоков с помощью компилятора Microsoft C / C ++, необходимо указать переключатель / MT (или / MTd для программ отладки).