मैं डेटा मैं बढ़ावा IOStreams और छानने धारा बफर का उपयोग कर zlib के साथ संकुचित है की एक बड़ी फ़ाइल है:बूस्ट आईओ स्ट्रीम और zlib में तेजी लाने के
boost::iostreams::array_source uncompressedArray(reinterpret_cast< const char* >(&uncompressedData[0]), uncompressedData.size());
boost::iostreams::filtering_streambuf<boost::iostreams::output> out;
out.push(*m_compressor);
out.push(boost::iostreams::char_back_inserter(compressedData));
boost::iostreams::copy(uncompressedArray, out);
गति के लिए मैं निम्नलिखित के साथ zlib पुस्तकालय आरंभ कर रहा हूँ:
boost::iostreams::zlib_params params;
params.level = boost::iostreams__zlib::best_speed;
params.mem_level = 9;
m_compressor.reset(new boost::iostreams::zlib_compressor(params, 131072));
m_decompressor.reset(new boost::iostreams::zlib_decompressor(params, 131072));
मेरे decompressor इस तरह दिखता है:
boost::iostreams::array_source compressedArray(reinterpret_cast< const char* >(&compressedData[0]), compressedData.size());
boost::iostreams::filtering_streambuf<boost::iostreams::input> m_in;
m_in.push(*m_decompressor);
m_in.push(compressedArray);
boost::iostreams::copy(m_in, boost::iostreams::char_back_inserter(uncompressedData));
मेरा प्रश्न हैं वहाँ एक है एनई तरीके मैं inflate (decompress) ऑपरेशन तेज कर सकते हैं? अभी संपीड़न मेरे डेटा एक्सेस समय का लगभग 83% ले रहा है और मुझे वास्तव में इसे तेज़ी से प्राप्त करने की आवश्यकता है। किसी भी सुझाव के लिए बहुत आभार होगा।