Re[4]: _beginthreadex vs CreateThread
От: TepMuHyc  
Дата: 26.10.01 09:25
Оценка:
Здравствуйте McQwerty, Вы писали:

MQ>Вопрос был связан со следующей фразой из MSDN:

MQ>"You must use _beginthread instead of CreateThread in C programs built with LIBCMT.LIB if you intend to call C run-time functions."

MQ>LIBCMT — это "Multithreaded" (опция /MT компилятора).

MQ>MSVCRT — это "Multithreaded DLL" (опция /MD).

MQ>Если я использую /MD — могу я вызывать RTL-функция из потоков созданных CreateThread'ом?


Ответ: МОЖЕШЬ. За малым исключением.
Очень немногие RTL функции используют глобальные переменные которые в
многониточной версии превращены в "ниточные" переменные.

вот их почти полный список: strtok, strerror, tmpnam, tmpfile, asctime, gmtime, ecvt, signal
А вообще, если хочешь найти их все, ищи те функции что вызывают ф-цию _getptd()
____________________
God obviously didn't debug, hasn't done any maintenance, and no documentation can be found. Truly amateur work.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.