前言:
在WIN1064位系统里面,使用IDE(VS2019)开发两个程序,这两个程序都是C++语言开发。
实现一个程序,假设为:服务器,另一个程序,假设名为:客户端。 他们二者通过共享内存交互数据。
***
正文:
第一步:创建服务器,通过CreateFileMapping 向 *** 作系统申请一块物理内存,命名为ShareMemory。 然后通过MapViewOfFile。将这么物理内存的指针拿到。然后就是常规内存 *** 作了,比如赋值之类的。用完之后,将物理内存和虚拟内存之间的连接断开。 最好告诉 *** 作系统,这片物理内存我停止使用了,你可以回收了。
详细代码如下:
#include "stdafx.h" #includeusing namespace std; #define BUF_SIZE 4096//定义一个宏,表述要共享的物理内存的大小 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { // 第一步:创建共享文件句柄 HANDLE hMapFile = CreateFileMapping( INVALID_HANDLE_VALUE, // 物理文件句柄 NULL, // 默认安全级别 PAGE_READWRITE, // 可读可写 0, // 高位文件大小 BUF_SIZE, // 低位文件大小 L"ShareMe
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)