[PropertyTree] In-Memory Performance of Xml/Json Serialization?
I'm personally more interested in the Xml characteristics, but I have noticed that the JSON parsing is much slower as it doesn't use rapidXml. The implementation of the JSON and XML read/write methods both use std::basic_*stream which is slow for in-memory usage. In the xml methods there also appears to be a strong assumption that "Key" is a std::string which then follows that the "Ptree::key_type::value_type" is of type char. Is there or would there be any opposition to the development of more performant write_xml() and read_xml() methods for in-memory use? These new performant overloads could either use std::string or char* directly instead of the slower stringstream classes? If the Key template argument is an std::string, the *printf* c-style methods could be used to improve performance and eliminate the locks that stringstreams uses. There is already an std::string based arg set that is used for a filename, so that would need to be overcome.
participants (1)
-
john smith