
Hi , I want to serialize my class objects ona memory mapped file. I am able to write to the file but reading is throwing me exceptions: namespace io = boost::iostreams; typedef io::stream_bufferio::mapped_file_source in_streambuf; typedef io::stream_bufferio::mapped_file_sink out_streambuf; int main() { // create and open a character archive for output // std::ofstream ofs("filename"); boost::iostreams::mapped_file_params params; params.path = "filepath"; params.flags = io::mapped_file::mapmode::readwrite; params.new_file_size = 10240; out_streambuf obuf(params); std::ostream ofs(&obuf); // create class instance const gps_position g(35, 59, 24.567f); // save data to archive { boost::archive::text_oarchive oa(ofs); // write class instance to archive oa << g; // archive and stream closed when destructors are called } /* ready for reading */ params.flags = io::mapped_file::mapmode::readonly; params.new_file_size = 0; // ... some time later restore the class instance to its orginal state gps_position newg; { // create and open an archive for input in_streambuf ibuf(params); /* this is throwing me exceptions */ std::istream ifs(&ibuf); //std::ifstream ifs("filename"); boost::archive::text_iarchive ia(ifs); // read class state from archive ia >> newg; // archive and stream closed when destructors are called } return 0; } Any help is appreciated. Thanks, Sadhan