C++ - 关闭应用程序后保留内存
C++ - preserve memory after app has been closed
我在C++中有一个处理数据的应用程序。比方说:
download dataA - run app to process A
download dataB - run app to process B
...
现在我需要在 B 运行中访问 A 生成的数据。我可以将它们存储在临时文件或数据库中,但它会减慢速度。有没有办法在内存中保留 A 的输出并在 B 中再次打开它?
我无法下载数据然后运行该应用程序,这是一个串行处理。
这取决于操作系统。在 Linux 上,您可以将数据存储在共享内存中,即使没有应用程序使用它,共享内存也是持久的。在Windows上也有共享内存,但是如果没有应用程序使用它,它将自动回收,因此一旦程序A结束,数据就会丢失。
这可以使用共享内存来完成。这取决于您的操作系统。
如果您使用的是 Windows:https://msdn.microsoft.com/en-us/library/windows/desktop/aa366551(v=vs.85).aspx
如果您使用的是 Linux:https://beej.us/guide/bgipc/output/html/multipage/mmap.html
但是还有另一种选择,使用 Boost.Interprocess 工具:http://www.boost.org/doc/libs/1_60_0/doc/html/interprocess/sharedmemorybetweenprocesses.html
相关文章:
- 如何将一个窗口保留在另一个应用程序窗口的前面
- 可视化 使用 VS Code 查找C++应用程序中的内存泄漏
- 应用程序内存使用量减少
- 在C++应用程序中使用 Tensorflow:如何释放 GPU 内存
- 任务管理器 - C/C++ 应用程序 - 分配的地址空间与已用内存
- OpenGL GLFW 应用程序 - 客户端内存限制
- 使用没有堆内存分配的接口的框架应用程序?
- 我们如何访问 Node.js 应用程序之外的内存?
- 使用 IPC 共享内存的应用程序是否可以访问彼此的代码?
- 使用 valgrind 的地块测量 c++ 应用程序的最大内存使用量(堆栈和堆)
- 为什么Linux报告了我的应用程序的内存使用情况
- 是否可以锁定应用程序中常见控件使用的内存?
- 如何以编程方式获取应用程序的内存使用情况
- 32 位应用程序内存不足
- CRT 检测到应用程序在堆缓冲区(新建/删除)类结束后写入内存
- Android OpenCV 应用程序的内存问题
- 将 python 嵌入我的应用程序时内存泄漏
- C++应用程序如何使用比 RSS 内存更多的堆
- C++ - 关闭应用程序后保留内存
- 无限分配内存应用程序崩溃