Спасибо, я и хотел услышать, что FreeMemory таки потокобезопасна
Насчет будущего, весьма настаиваю на сохранении ее потокобезопасности. Все же чистка памяти после колбека должна быть обязанностью библиотеки. Но если она переложена на пользователя, этот момент должен быть учтен или, как минимум, широко рассмотрен. Вопрос о том, что она может являться непотокобезопасной возник кажется у меня одного - даже примеры использования библиотеки не используют синхронизацию при ее вызове. А ведь быть уверенным в том, что обращение к библиотеке и обратный вызов не совпадут по времени нельзя независимо от того, насколько простое приложение у пользователя.
Касательно того, что мешает ее синхронизировать, мешает одна простая вещь - производительность. И тем более глупо ее синхронизировать, если она уже синхронизирована внутри библиотки.