我需要一种使用C或C++的方法来从/dev/shm
获取可用内存。请注意,在我的Linux上的ARM
架构上,不幸的是,ipcs
报告错误的最大值。可用内存信息,但df -h
正确地给我从tmpfs
当前可用内存。如何从/ dev/shm获得有关可用内存的信息
问题是我试图通过boost::interprocess::shared_memory_object::truncate
分配共享内存,但是当内存不可用时,此函数不会抛出。这个问题并不明显在boost::interprocess
中,但是来自底层的ftruncate()
,它在没有可用内存时不会返回相应的错误(https://svn.boost.org/trac/boost/ticket/4374),所以boost
不能抛出任何东西。
我会尽力让你知道。谢谢。 – Martin