////////////////////////////////////////////////////////////////////////////// // // (C) Copyright Ion Gaztanaga 2004-2012. Distributed under the Boost // Software License, Version 1.0. (See accompanying file // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // // See http://www.boost.org/libs/interprocess for documentation. // ////////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include using namespace boost::interprocess; int main () { try{ const std::size_t MemSize = 99999*2; { //Now check anonymous mapping mapped_region region(anonymous_shared_memory(MemSize)); //Write pattern unsigned char *pattern = static_cast(region.get_address()); for(std::size_t i = 0 ;i < MemSize ;++i, ++pattern){ *pattern = static_cast(i); } //Check pattern pattern = static_cast(region.get_address()); for(std::size_t i = 0 ;i < MemSize ;++i, ++pattern){ if(*pattern != static_cast(i)){ return 1; } } } } catch(std::exception &exc){ std::cout << "Unhandled exception: " << exc.what() << std::endl; return 1; } return 0; } #include