当前位置: 首页 > news >正文

佛山微信网站设计wordpress文章无法置顶

佛山微信网站设计,wordpress文章无法置顶,建立皇朝争霸完结小说,哈尔滨网站建设的公司哪家好共享内存#xff1a;1、在内核中创建共享内存#xff1b;2、进程1和进程2都能够访问到#xff0c;通过这段内存空间进行数据传递#xff1b;3、共享内存是所有进程间通信方式中#xff0c;效率最高#xff0c;不需要在内核中往返进行拷贝#xff1b;4、共享内存的内存空…共享内存1、在内核中创建共享内存2、进程1和进程2都能够访问到通过这段内存空间进行数据传递3、共享内存是所有进程间通信方式中效率最高不需要在内核中往返进行拷贝4、共享内存的内存空间大小是4KB的整数倍常用的接口函数一、创建共享内存shmget函数 #include sys/ipc.h#include sys/shm.hint shmget(key_t key, size_t size, int shmflg);/*参数key键值key 通过ftok获取IPC_PRIVATE只能用于亲缘进程间的通信size共享内存的大小 PAGE_SIZE(4k)的整数倍shmflg共享的标志位IPC_CREAT|0666 或 IPC_CREAT|IPC_EXCL|0666返回值成功 共享内存编号失败 -1 重置错误码*/二、映射共享内存到当前的进程空间shmat函数 #include sys/ipc.h#include sys/shm.hvoid *shmat(int shmid, const void *shmaddr, int shmflg);/*参数shmid共享内存编号shmaddrNULL让系统自动分配shmflg共享内存操作方式0 读写SHM_RDONLY 只读返回值成功 指向共享内存的地址失败 (void *)-1 重置错误码*/三、取消地址映射shmdt函数 #include sys/ipc.h#include sys/shm.hint shmdt(const void *shmaddr);/*参数shmaddr指向共享内存的指针返回值成功 0失败 -1 重置错误码*/四、控制共享内存shmctl函数 #include sys/ipc.h#include sys/shm.hint shmctl(int shmid, int cmd, struct shmid_ds *buf);/*参数shmid共享内存编号cmd操作的命令码IPC_STAT获取IPC_SET设置IPC_RMID删除共享内存标记要销毁的段。实际上只有在最后一个进程将其分离之后 (关联结构shmid_ds的shm_nattch成员为零时) 段才会被销毁。调用者必须是段的所有者或创建者或具有特权。buf参数被忽略。buf共享内存属性结构体指针返回值成功 0失败 -1 重置错误码*/示例代码写端 #include stdio.h#include stdlib.h#include string.h#include sys/types.h#include sys/ipc.h#include sys/shm.h#include unistd.h#define PIGE_SIZE 4*1024int main(int argc, char const *argv[]){//获取键值key_t key ftok(/home/linux/work/MSG, k);if(-1 key){perror(ftok error);exit(1);}//创建共享内存int shmid shmget(key, 2*PIGE_SIZE,IPC_CREAT|0666);if(-1 shmid)\{perror(shmget error);exit(1);}//映射共享内存char *sh_addr (char *)shmat(shmid, NULL, 0);if((void *) -1 sh_addr){perror(shmat error);exit(1);}//向共享内存中写入数据while(1){fgets(sh_addr,128,stdin);sh_addr[strlen(sh_addr)-1] \0;if(!strncmp(sh_addr,quit,4)){break;}}//取消映射if(-1 shmdt(sh_addr)){perror(shmdt error);exit(1);}//删除共享内存if(-1 shmctl(shmid, IPC_RMID, NULL)){perror(shmctl error);exit(1);}return 0;} 读端 #include stdio.h#include stdlib.h#include string.h#include sys/types.h#include sys/ipc.h#include sys/shm.h#include unistd.h#define PIGE_SIZE 4*1024int main(int argc, char const *argv[]){//获取键值key_t key ftok(/home/linux/work/MSG, k);if(-1 key){perror(ftok error);exit(1);}//创建共享内存int shmid shmget(key, 2*PIGE_SIZE,IPC_CREAT|0666);if(-1 shmid)\{perror(shmget error);exit(1);}//映射共享内存char *sh_addr (char *)shmat(shmid, NULL, 0);if((void *) -1 sh_addr){perror(shmat error);exit(1);}while(1){sleep(2);//防止刷屏printf(%s\n,sh_addr);if(!strncmp(sh_addr,quit,4)){break;}}//取消映射if(-1 shmdt(sh_addr)){perror(shmdt error);exit(1);}//删除共享内存if(-1 shmctl(shmid, IPC_RMID, NULL)){perror(shmctl error);exit(1);}return 0;} 运行结果 linuxubuntu:~/work/MSG$ gcc w3.c -o w3linuxubuntu:~/work/MSG$ ./w3hihellochinaquitlinuxubuntu:~/work/MSG$ gcc r3.c -o r3linuxubuntu:~/work/MSG$ ./r3hihihihellochinachinachinaquitshmctl error: Invalid argument注意不按4k的整数倍给shmget传参分配时也是按4k的整数倍分配
http://www.yutouwan.com/news/476795/

相关文章:

  • 企业网站怎么优化中介房产管理软件推荐
  • 网站建设外包 源代码iis系统怎么用wordpress
  • 百度网站管理互联网+创新创业大赛
  • 游戏推广员拉人技巧西安网站优化
  • 重庆渝中区企业网站建设公司东莞做网站公司有哪些
  • 网站推广服务外包有哪些渠道杭州住房和城市建设局网站
  • 做网站UI工具织梦 网站标题
  • 官方网站改版建议aws中国免费vps
  • 东莞网站设计哪家强怎么用百度网盘做网站
  • 网站首页怎么做ps平面设计专业就业前景和就业方向
  • 宁波品牌网站设计个人网页设计图片背景图
  • 企业网站的设计与实现东京购物商城
  • 开发网站公司名称wordpress 文章关键词
  • 沧州app商城定制开发南宁求介绍seo软件
  • 网站备案个人可以做吗四川手机网站建设
  • 简易php企业网站源码找客户去哪个平台
  • 广州做网站应用之星 wordpress
  • 东莞网络推广网站wordpress店铺模板
  • 网站制作 南通青岛网站开发公司
  • 交网站建设 域名计入什么科目免费做效果图网站
  • 昆明做网站的公司有哪些wordpress friday
  • 保定网站排名网站后台管理系统使用手册
  • 白城北京网站建设网站是可以做的吗
  • 有哪些网站是做背景图片素材的wordpress上传文件插件
  • 做网站的收获及感想可以投放广告的网站
  • 门户网站运营网站用户 分析
  • asp做的网站asp源代码博客网站设计方案
  • wordpress双语站友情链接只有链接
  • 网站文件夹命名seohtml5国内网站
  • 国防教育网站建设方案wordpress主题实例制作