В попытке выяснить, является ли malloc()
в моей кросс-скомпилированной программе mingw32 поточно-безопасной или нет, я запустил nm
в двоичном файле. Результаты:
$ i386-mingw32-nm myfile.exe | grep malloc
00ab04fc I __imp__malloc
005b8e70 T _malloc
$
Для сравнения приведем поиск для GetLastError
, который используется, но не определен в моей программе:
$ i386-mingw32-nm myfile.exe | grep GetLastError
005b9034 T _GetLastError@0
00ab0370 I __imp__GetLastError@0
$
А вот поиск того, что я знаю, находится в моей программе:
$ i386-mingw32-nm myfile.exe | grep ends_with
0040a98d T _ends_with
$
Я думаю , что это означает, что malloc()
в моей библиотеке C предоставляется как прикрытие для системы malloc()
, как и GetLastError()
, но ends_with()
не появляется в система. Но я хотел бы получить второе мнение.
Спасибо!