在c++代码中关闭和启动另外一个pid进程号,共享内存数据使用
char * of_program_name= "./AB";
1、 pid = getPidFromName(of_program_name);
if (pid > 0)
{
ERROR("AB process still exispid = %d\n", pid);
if (kill(pid, SIGKILL)) //杀死进程
{
fprintf(stderr, "kill(SIGKILL)error\n");
continue;
}
wait(NULL);
}
2、重启另外一个进程
if (0 == fork())
{
ERROR("start ABagain\n");
if (execl(of_program_name, of_program_name, NULL))
{
fprintf(stderr, "exec %s error\n", of_program_name);
}
}
usleep(100000);
}
3、//关闭共享内存
if (shmctl(shmid, IPC_RMID, 0) == -1)
{
fprintf(stderr, "shmctl(IPC_RMID) failed\n");
exit(EXIT_FAILURE);
}
4、 //share memory initialzie
void* shm = NULL;
struct shared_use_st* shared = NULL;
int shmid;
//get share memory
shmid = shmget((key_t)6666, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
if (shmid == -1)
{
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
// map the share memory to local address
shm = shmat(shmid, (void*)0, 0);
if (shm == (void*) -1)
{
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
shared = (struct shared_use_st*)shm;
在c++代码中关闭和启动另外一个pid进程号,共享内存数据使用相关推荐
- c# mysql代码中写事务_代码中添加事务控制 VS(数据库存储过程+事务) 保证数据的完整性与一致性...
[c#]代码库代码中使用事务前提:务必保证一个功能(或用例)在同一个打开的数据连接上,放到同一个事务里面操作. 首先是在D层添加一个类为了保存当前操作的这一个连接放到一个事务中执行,并事务执行打开同一 ...
- 懒人python操作,代码中永远只需要导入一个库
Pyforest是一个开源的Python库,可以自动导入代码中使用到的Python库. [阅读全文] 实话说,作为一个程序员还是得不停的学习呀.昨天晚上睡觉之前就在论坛上面溜达了一会儿,发现了有个叫p ...
- linux c之管道的介绍、创建关闭和简单读写(父进程向子进程写入数据)
1.管道介绍. 进程间通信的几种主要手段中.其中管道和有名管道是最早的进程间通信机制之一,管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具 有管道所具有的功能外,它还允 ...
- 在cmd中关闭或启动服务
1. 必须以管理员身份运行cmd(做法:右键cmd黑窗口,右键"命令提示符",选择"以管理员身份运行") 2. 如果需要关闭某服务的话,则在弹出的cmd窗口中输 ...
- ajax表单图片,js中使用ajax上传一个带有图片的表单数据
function save() { var formData = new FormData(); if( $('#file')[0].files.length>0){ formData.appe ...
- xp系统禁止开机启动服务器,win xp开机启动项怎么设置-win xp关闭开机启动项的方法 - 河东软件园...
所谓的启动项,也就是在我们开启电脑的时候系统自动在前台或者是后台所运行的程序.而当操作的系统进行登陆以后,就会在进程表中出现各式各样的进程.然而在我们开启电脑的时候许多的程序都会自启动,给我们带来了不 ...
- 域 嵌入图像显示不出来_如何(以及为什么)将域概念嵌入代码中
域 嵌入图像显示不出来 Code should clearly reflect the problem it's solving, and thus openly expose that proble ...
- [翻译]:怎样从C/C++代码中对C#进行回调
声明:网络上类似的中文博客大有存在,本人知识水平有限,业余爱好,也是为了备份收藏How to make a callback to C# from C/C++ code 本着共享知识的初衷,翻译一份给 ...
- C++代码中执行bat文件
C++代码中执行bat文件 在C++代码中执行磁盘上的一个bat文件,这个bat文件的完整路径是:E:\\7z\\my7z.bat. 方法1 system("E:\\7z\\my7z.bat ...
最新文章
- php 接口curl,php中接口强大之处php_curl
- 上顿号符号_上顿号符号_标点符号(1):谈谈顿号的用法
- 前端学习(2832):小程序事件绑定2
- 三星Galaxy Note20系列再遭减配:100倍变焦也没了
- day22,ConfigParser,subprocess,xlrd三个模块
- linux c++应用程序内存高或者占用CPU高的解决方案_20161213
- oracle怎么装测试库,测试库csdb安装ORACLE_TEXT组件
- 荷兰国旗问题+快速排序
- python 经纬度画北京地图_python basemap 画出经纬度并标定的实例
- 阿里巴巴推进中国中产阶级奢侈消费
- 复旦大学计算机软件学什么,复旦大学计算机软件
- 导出开发板根文件系统rootfs
- Linux端类似种子猫的软件,值得一试的四款Linux Torrent客户软件
- 挖掘机技术哪家强?--来这里看看吧!
- 计算机视觉公司 摘过来,以后看看
- windows 查看文件的md5值
- 电脑html文件删除,电脑plugin可以删除吗
- 为什么华为a1路由器网速变慢_凭什么网速就比别人快?华为路由 A1 畅享版体验...
- 基于JSP仓储物资管理系统
- 《安富莱嵌入式周报》第308期:开源带软硬件安全认证的PLC设计,开源功率计,可靠PID实现,PR2机器人设计文件全开源,智能手表设计WASP-OS
热门文章
- react-router-dom@6获取路由传参
- js(Dom+Bom)第三天(2)
- BZOJ1439 : YY的问题
- Java this 关键字的用法
- Gym 100090D Insomnia
- hibernate继承映射之每个具体类一张表
- 以C#编写的Socket服务器的Android手机聊天室Demo
- [原]第一次遭遇Oracle的Bug,纪念一下 |ORA-00600 kmgs_pre_process_request_6|
- 看完这篇文章保你面试稳操胜券——React篇
- 前端跨域通信的几种方式