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

做国际贸易哪个网站比较好网络推广应该怎么做啊

做国际贸易哪个网站比较好,网络推广应该怎么做啊,遵义网络科技公司,大师摄影作品网站(一)发行版:Ubuntu16.04.7 (二)记录: (1)什么是共享内存 共享内存是System V版本的最后一个进程间通信方式。共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑…

(一)发行版:Ubuntu16.04.7


(二)记录:

(1)什么是共享内存

共享内存是System V版本的最后一个进程间通信方式。共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到他们自己的地址空间中,所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任何其他进程。

(2)shmget函数

头文件:<sys/ipc.h>、<sys/shm.h>

函数原型:  int shmget(key_t key,size_t size,int shmflg);

参数:key_t key:IPC_PRIVATE或者是ftok函数的返回值

          size_t size:   共享内存的大小

          int shmflg:   权限

返回值:成功返回共享内存的标识符,失败返回-1。

(3)shmget函数编译运行

a.使用IPC_PRIVATE

#include <stdio.h>
#include <sys/ipc.h>
#include <sys/shm.h>int main(void)
{
int shmid;
shmid=shmget(IPC_PRIVATE,1024,0777);
if(shmid==-1)
{
printf("shmget error.\n");
return -1;
}
printf("shmget is ok and shmid is %d\n",shmid);
return 0;
}

删除共享内存:

 (4)ftok函数

头文件:<sys/types.h>、<sys/ipc.h>

函数原型:key_t ftok(const char *pathname,int proj_id);

参数:const char *pathname文件路径以及文件名

           int proj_id:字符

返回值:成功返回key值,失败返回-1

(5)ftok函数编译运行(需要先创建m.c)

#include <stdio.h>
#include <sys/ipc.h>
#include <sys/shm.h>int main(void)
{
int shmid;
key_t key;
key=ftok("./m.c",'m');
shmid=shmget(key,1024,0777|IPC_CREAT);
if(shmid==-1)
{
printf("shmget error.\n");
return -1;
}
printf("shmget is ok and shmid is %d\n",shmid);
return 0;
}

可以发现用ftok创建的共享内存的key值不为0 。

(6)shmat函数

头文件:<sys/types.h>、<sys/shm.h>

函数原型:void *shmat(int shmid,const void *shmaddr,int shmflg);

参数:int shmid:共享内存的标识符,就是shmget函数的返回值

          const void *shmaddr:映射到的地址,一般写NULL,NULL为系统自动完成的映射

          int shmflg:通常为0,表示共享内存可读可写,或者SHM_RDONLY,表示共享内存只读

返回值:成功返回共享内存映射到进程中的地址,失败返回-1

 (7)shmdt函数

头文件:<sys/types.h>、<sys/shm.h>

函数原型:int shmdt(const void *shmaddr);

参数:const void *shmaddr:共享内存映射后的地址

返回值:成功返回0,失败返回-1

注意:shmdt函数是将进程中的地址映射删除,也就是说当一个进程不需要共享内存的时候,就可以使用这个函数将他从进程地址空间中脱离,并不会删除内核里面的共享内存对象。

(8)父进程与子进程进行通信

//父进程与子进程通过共享内存通信
#include <stdio.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
int shmid;
key_t key;
pid_t pid;
//映射地址
char *s_addr,*p_addr;
//创建共享内存
key=ftok("./m.c",'m');
shmid=shmget(key,1024,0777|IPC_CREAT);
if(shmid==-1)
{
printf("shmget error.\n");
return -1;
}
printf("shmget is ok and shmid is %d\n",shmid);
//创建进程
pid=fork();
//父进程
if(pid > 0)
{//映射地址p_addr=shmat(shmid,NULL,0);strncpy(p_addr,"hello",5);wait(NULL);exit(0);
}
//子进程
if(pid == 0)
{sleep(2);s_addr = shmat(shmid,NULL,0);printf("s_addr is %s\n",s_addr);exit(0);
}
return 0;
}

 


(三)命令:

http://www.wooajung.com/news/32779.html

相关文章:

  • 长沙最近什么传染病站内优化seo
  • 做家电网站好搜索关键词然后排名怎样提升
  • 网站关键词怎么写网上怎么发布广告
  • 网站服务器租用和托管营销型网站开发公司
  • 郴州seo外包相关搜索优化软件
  • 国外档案网站建设seo公司哪家好
  • 河南省安阳市建设银行网站百度云资源搜索引擎入口
  • 猪八戒设计网站如何做兼职seo排名赚能赚钱吗
  • 微信公众号怎么做微网站吗seo优化易下拉排名
  • 做袜子娃娃的网站公众号软文怎么写
  • 网站内容如何更新软文推广去哪个平台好
  • 怎样如何做网站赚钱我要推广网
  • 河北城乡建设网站培训网
  • 顺德公益网站制作必应搜索引擎入口
  • cloudflare做侵权网站广告营销是做什么的
  • 重庆网站建公司大全整站seo优化哪家好
  • 做网站 乐清如何自己建网站
  • 做网站什么是解析什么是跳转中国关键词官网
  • web技术网站开发google play下载
  • web前端开发实训心得体会关键词优化包年推广
  • 网站如何连接微信支付app推广拉新接单平台
  • 做自己的网站服务器多少钱wp博客seo插件
  • 网页设计实训心得500字百度seo关键词优化费用
  • 电脑做网站服务器WIN7 买个域名沧州网站运营公司
  • designer怎么做网站怎么做个人网页
  • 网站制作的注意事项自媒体论坛交流推荐
  • 建筑网站大全玻璃网站加速
  • 南通做网站安卓优化大师app下载安装
  • 惠城网站建设有哪些网站建设制作免费
  • 南京鼓楼做网站网站怎么打开