Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.71
jonson
231 / 204 / 61
Регистрация: 18.03.2010
Сообщений: 749
#1

CreateThread или beginthreadex - C++

19.08.2011, 02:19. Просмотров 2110. Ответов 3
Метки нет (Все метки)

Как-то так повелось что при создании потока я использую ф-цию CreateThread.
Тем не менее, все почему-то советуют пользоваться _beginthreadex, аргументируя это тем что возможно присутствие каких-то ошибок при использовании CreateThread.
Товарищи, что Вы думаете на этот счёт:
Можно ли использовать CreateThread ?
Или всё-таки правильнее пользоваться _beginthreadex. И если так, то почему?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2011, 02:19     CreateThread или beginthreadex
Посмотрите здесь:

createthread и closehandle C++
C++ Книги или справочники для опытных(или проффесиональных) программистов!
Вложенные CMap или CArray-объекты. Ошибка компилятора или неправильная работа. C++
Контроль точности Рунге-Кутта (3 или 4 порядка) или Эйлера. C++
C++ Использование CreateThread
Имеет ли смысл продолжать учить с++ или попробовать перейти в с# или java? C++
C++ Struct в CreateThread
При вводе элементов массива выводить их тип (или int или float) C++
C++ Количество нулевых, или положительных, или отрицательных элементов в двумерном массиве
C++ Написать программу вычисления площади треугольники или квадрата или трапеции
Вернуть значение функции, запущенной через CreateThread C++
Придумать и описать создание списка или стека или очереди. И работу с ними. C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
grizlik78
Эксперт С++
1903 / 1435 / 109
Регистрация: 29.05.2011
Сообщений: 2,989
19.08.2011, 02:39     CreateThread или beginthreadex #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Весь вопрос в том, использует ли созданный поток C run-time library или нет. Если нет, то можно и CreateThread. Но раз уж программа на C/C++, то логичнее всё-таки _beginthreadex, с многопоточной версией библиотеки.
jonson
231 / 204 / 61
Регистрация: 18.03.2010
Сообщений: 749
19.08.2011, 02:45  [ТС]     CreateThread или beginthreadex #3
т.е. если в потоке, созданном CreateThread используются Си функции то возможны какие-то лаги?
grizlik78
Эксперт С++
1903 / 1435 / 109
Регистрация: 29.05.2011
Сообщений: 2,989
19.08.2011, 03:15     CreateThread или beginthreadex #4
Возможно аварийное завершение процесса.
MSDN: CreateThread Function
A thread in an executable that calls the C run-time library (CRT) should use the _beginthreadex and _endthreadex functions for thread management rather than CreateThread and ExitThread; this requires the use of the multi-threaded version of the CRT. If a thread created using CreateThread calls the CRT, the CRT may terminate the process in low-memory conditions.
Yandex
Объявления
19.08.2011, 03:15     CreateThread или beginthreadex
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru