数据库内存共享实现原理是什么

技术数据库内存共享实现原理是什么这篇文章主要讲解了“数据库内存共享实现原理是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“数据库内存共享实现原理是什么”吧!共享内存是

本文主要讲解“数据库内存共享的实现原理是什么”,文中讲解内容简单明了,易学易懂。请跟随边肖的思路,一起学习学习“数据库内存共享的实现原理是什么”。

共享内存是进程间通信的一种方式。PostgreSQL使用共享内存来缓存数据和各种数据结构。

下面是演示代码,逻辑很简单,参考代码自己注释。

/*

申请共享内存,父进程写一串字符,子进程读出。

*/

# includestdio.h

#包括ys/ipc.h

#包括ys/shm.h

#包括系统/类型. h

# includeunistd.h

# includestdlib.h

//1k共享内存。

#defineSHM_SIZE1024

#defineSHM_ID10086

intmain()

{

//共享内存id,子进程id。

intshmid,pid

//共享内存指针。

char * ptr=NULL

//申请共享内存。

shmid=shmget((key_t)SHM_ID,SHM_SIZE,IPC _ CREAT | 0600);

//将共享内存映射到进程地址空间。

ptr=(char*)shmat(shmid,0,0);

printf(' attachpointraddris % p \ n ',ptr);

ptr=' Thisissharedmemory!';

printf(' StStringof ParentProcess 3360% s \ n ',ptr);

if((pid=fork())==-1)

{

perror('forkprocesserror!');

退出(0);

}

elseif(!pid)

{

printf(' childprocesspidis :% d,Stringis % s \ n ',pid,ptr);

退出(0);

}else{

睡眠(1);

//Unmap。

shm dt(ptr);

//删除共享内存。

shmctl(shmid,IPC_RMID,0);

}

返回0;

}运行输出。

[pg12 @ localhostipc]$ gcc-STD=c11-of fork . c

infileincluded from fork . 36860 . 88888888861

/usr/include/sys/IPC . h :24: warn : # warn ' files using thisheadrmustogetappelledwith _ SVID _ SOURCE or _ XOPEN _ SOURCE '[-Wcpp]

#警告“文件使用thishheadermstatepiledwith _ SVID _ SOURCE or _ XOPEN _ SOURCE”

^

[pg12@localhostipc]$。/fork

attachpointraddris0x 7 f 61 FFB 6b 000

parentprocessings 3360的内存!

ChildProcessPIDis:0,StringisThisissharedmemory!

[pg12@localhostipc]$感谢阅读。以上就是“数据库内存共享的原理是什么”的内容。看完这篇文章,相信你对数据库内存共享的原理是什么的问题有了更深的理解。具体用法需要实践验证。在这里,边肖将为大家推送更多相关知识点的文章。欢迎关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/67435.html

(0)

相关推荐

  • 手机突然没声音了,手机来电没有声音怎么回事

    技术手机突然没声音了,手机来电没有声音怎么回事原因一:手机设置“静音模式”会造成来电没有声音手机突然没声音了,可以清除小喇叭符合调为响铃模式即可。 原因二:手机设置为“飞行模式”会造成无法接听,轻触关闭“飞行模式”按钮标

    生活 2021年10月31日
  • 抖音刷点赞会被限流吗,抖音刷点赞技巧是什么?

    技术抖音刷点赞会被限流吗,抖音刷点赞技巧是什么?抖音如何刷点赞?找一个有实力的代刷平台就能简单解决。虽然网上代刷平台很多,但是真正有实力的很少。而且有不少骗子平台也混在其中,一不小心也很容易被骗,被骗小钱还好说,就当是喂

    测评 2021年10月21日
  • JS创建对象的方式是什么

    技术JS创建对象的方式是什么本篇内容主要讲解“JS创建对象的方式是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS创建对象的方式是什么”吧!创建对象的4种方式:1.字面

    攻略 2021年11月29日
  • 学习Python有什么用

    技术学习Python有什么用这篇文章主要讲解了“学习Python有什么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“学习Python有什么用”吧!理由一:Python真

    攻略 2021年10月21日
  • 如何使用mybatis collection在转化时候报错的问题

    技术如何使用mybatis collection在转化时候报错的问题如何使用mybatis collection在转化时候报错的问题,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章

    攻略 2021年10月20日
  • 怎么实现Redis主从复制

    技术怎么实现Redis主从复制本篇内容介绍了“怎么实现Redis主从复制”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!架

    攻略 2021年11月5日