进程间通信测试-signal
截图

代码
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <time.h>
//using namespace std;
int i;
void close_sig_handler(int sig){
int n = 0;
srand((unsigned int)time(NULL));
int A[10] = {-1};
int Temp = -1;
while (n<10)
{
Temp= rand()%100;
if(Temp%2 == 1)
{
A[n] = Temp;
}
else
{
A[n] = Temp +1;
}
n++;
}
for(int i=0;i<10;i++)
{
printf("%d ",A[i]);
}
printf("\n");
exit(0);
}
void quit_sig_handler(int sig)
{
int n = 0;
srand((unsigned int)time(NULL));
int A[10] = {-1};
int Temp = -1;
while (n<10)
{
Temp= rand()%100;
if(Temp%2 == 0)
{
A[n] = Temp;
}
else
{
A[n] = Temp +1;
}
n++;
}
for(int i=0;i<10;i++)
{
printf("%d ",A[i]);
}
printf("\n");
exit(0);
}
int main()
{
struct sigaction sa;
sa.sa_handler = close_sig_handler;
struct sigaction sb;
sb.sa_handler = quit_sig_handler;
assert(sigaction(SIGINT,&sa,NULL)!=-1);//捕获到信号sig,使用sa中规定的方法处理
assert(sigaction(SIGQUIT,&sb,NULL)!=-1);
i=0;
while(1){
//sleep(1);
}
i++;
}
进程间通信测试-signal的更多相关文章
- Linux 进程间通信 --- 信号通信 --- signal --- signal(SIGINT, my_func); --- 按键驱动异步通知(转)
信号 ( signal ) 机制是 UNIX 系统中最为古老的进程间通信机制,很多条件可以产生一个信号. 信号的产生: 1,当用户按下某些按键时,产生信号. 2,硬件异常产生信号:除数为 0 ,无效 ...
- python进程间通信--信号Signal
信号signal 是python进程间通信多种机制中的其中一种机制.可以对操作系统进程的控制,当进程中发生某种原因而中断时,可以异步处理这个异常. 信号通过注册的方式‘挂’在一个进程中,并且不会阻塞该 ...
- Linux 进程间通信 信号(signal)
1. 概念: 1)信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式 2)信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件. 3)如果 ...
- ios中的奇怪崩溃Signal和EXC_BAD_ACCESS错误分析
什么是Signal 在计算机科学中,信号(英语:Signals)是Unix.类Unix以及其他POSIX兼容的操作系统中进程间通讯的一种有限制的方式.它是一种异步的通知机制,用来提醒进程一个事件已经发 ...
- linux c/c++
string 字符串操作 操作数的都是 ( char * )型,操作数必须是指向字符串的指针("a"),不能是字符('a'),操作时不考虑末尾的'\0'. size_t strle ...
- Samsung_tiny4412(驱动笔记01)----linux 3.5,U-Boot,Busybox,SD卡启动环境搭建
/*********************************************************************************** * * linux 3.5,U ...
- Python3 与 C# 并发编程之~进程先导篇
在线预览:http://github.lesschina.com/python/base/concurrency/1.并发编程-进程先导篇.html Python3 与 C# 并发编程之- 进程篇 ...
- 生产者、消费者模型---Queue类
Queue队列在几乎每种编程语言都会有,python的列表隐藏的一个特点就是一个后进先出(LIFO)队列.而本文所讨论的Queue是python标准库queue中的一个类.它的原理与列表相似,但是先进 ...
- INTEST/EXTEST SCAN
INTEST scan指的是对IP 内部的scan cell的扫描测试,针对IP内部的flip-flop进行shift/capture的操作.和INTEST SCAN 对应的就是EXTEST SCAN ...
- INTEST/EXTEST SCAN 的学习
intest scan的一些基本知识.INTEST scan指的是对IP 内部的scan cell的扫描测试,针对IP内部的flip-flop进行shift/capture的操作.和INTEST SC ...
随机推荐
- 我的vim配置相关
谨以此文记录下之前的折腾.(后续可能还会折腾什么) 目标 我的目的很简单,就是希望能有一个启动快速的文本编辑器,可以简单的代码着色,vim键位,简单的文本修改,打开大点的文件不发愁,可以简单的form ...
- 简单的自动清理TIM/QQ聊天垃圾文件方案
我平时喜欢在后台挂着Tim,时间一长,我发现数据文件夹会越来越大,即使我没有看过这些消息(多为群聊消息),为了不再惦记清理垃圾文件,我整理了以下方案,可以每天清理一次7天前的文件. 1. 在磁盘任意位 ...
- 树莓派Raspbian 玩耍
树莓派Raspbian玩耍 把第一次安装树莓派并通过花生壳实现内网穿透的过程记录下来 下载工具 Win32DiskImager v0.9.zip 和 SD Formatter 4.0 for SD/S ...
- Gitbook部署之nodejs踩坑
title: Gitbook部署之nodejs踩坑 date: 2020-11-06 16:34:30 summary: Gitbook部署和NVM的使用.hexo失效 Gitbook部署之nodej ...
- shell语法4-printf命令、test命令和判断符号[]、逻辑运算符&&和||
一.printf命令 printf命令用于格式化输出,类似于C/C++中的printf函数. 默认不会在字符串末尾添加换行符!!! 例如: printf "%10d.\n" 123 ...
- k8s如何配置secret保存harbor仓库账号密码、pod中怎么使用harbor仓库镜像
转载: https://blog.csdn.net/MssGuo/article/details/127312239
- python常用数据结构模块--collections
import collections ''' python常用数据结构模块--collections collections是日常工作中的重点.高频模块,常用类型有: 计数器(Counter) 双向队 ...
- Android Studio相关配置说明
介绍:Android Sdutio 是谷歌推出的一个 Android 集成开发工具. 现已将 SDK(software development kit)集成到 Android Studio 中.可以直 ...
- 山寨e网通公告
SHANZGONGG山寨e网通V1.0[换行]软件完全免费,官方绝不会索取任何费用,请勿被骗,后果自负.[换行]如果你有什么更好的建议或者需要哪里改进的地方,请联系作者QQ206044600反馈,前提 ...
- Oracle函数NULLIF
1.NULLIF函数 函数语法:NULLIF(Expression1,Expression2) 函数功能:如果来个表达式相等,则返回NULL值,否则返回第一个表达式 功能很简单,但是要注意以下几种情况 ...