2010-11-15 4 views
3

Документация RapidXml говоритБезопасен ли поток RapidXml?

Pool поддерживает RAPIDXML_STATIC_POOL_SIZE байт статически выделяемой памяти. До статическая память исчерпана, динамические выделены. Когда статическая память исчерпана, бассейн выделяет дополнительные блоки памяти размера RAPIDXML_DYNAMIC_POOL_SIZE каждый, используя глобальный новый [] и удалить [] операторы

Я расцениваю это как: RapidXML использует глобальный пул памяти , Безопасны ли операции над потоком пула глобальной памяти? То есть могу ли я использовать несколько экземпляров парсера RapidXML на протяжении всей моей программы, не учитывая проблемы с потоками?

ответ

5

Мое толкование было неправильно. «Пул статической памяти» - это массив, который помещается в стек. Поэтому он не является статичным, как в статическом массиве C++, а скорее статичным, как «не динамически распределенным».

Вывод: RapidXML не разделяет пул памяти между экземплярами. Поэтому вопрос недействителен.

+1

Спасибо, что опубликовали разъяснение/новый NFO, а не просто удаление. :) – 2012-01-24 14:00:42

Смежные вопросы