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

258做网站怎么样搜索引擎优化seo

258做网站怎么样,搜索引擎优化seo,企业建立网站,中国网站优化公司🔥博客主页: 我要成为C领域大神🎥系列专栏:【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 ​ ​ 实现原理&a…

🔥博客主页: 我要成为C++领域大神
🎥系列专栏:【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】
❤️感谢大家点赞👍收藏⭐评论✍️

本博客致力于知识分享,与更多的人进行学习交流

实现原理:通过 SIGUSR1(10)SIGUSR2(12) 信号进行进程间通信。

父进程中屏蔽SIGUSR1,然后将这个屏蔽集继承给子进程,子进程被创建后默认屏蔽SIGUSR1,而后子进程完成信号捕捉。捕捉设定完毕,解除对SIGUSR1的屏蔽。这样可以避免子进程还未捕捉完成,就被先抵达的信号杀死。

定义信号处理函数:编写函数处理接收到的 SIGUSR1SIGUSR2 信号。

struct sigaction 结构体用于绑定捕捉函数,可以绑定的捕捉函数的原型取决于结构体中的sa_flags成员,通过帮助手册可以看到三种函数原型。而sa_sigaction函数可以携带数据进行传递,整型或者指针,取决于sigqueue在传递数据时是整型还是指针

sigqueue 函数是一个用于向指定进程发送信号的函数,并附带一个额外的整数或指针值。与标准的 kill 函数相比,sigqueue 提供了一个更高级的接口,可以携带附加数据,从而实现更复杂的进程间通信。

在进程间传递信息使用sigqueue函数

#include <signal.h>int sigqueue(pid_t pid, int sig, const union sigval value);

value: 一个 union sigval 联合体,可以包含一个整数或一个指针值。用于传递附加数据。

union sigval 联合体

union sigval {int   sival_int;void *sival_ptr;
};

下面是利用这一机制实现使用信号进行进程间通信的demo程序:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
#include <string.h>
#include <sys/fcntl.h>
#include <signal.h>pid_t childPid;
void Parent_SIG(int signo,siginfo_t *info,void *arg)
{//显示数据printf("Parent PID:%d val:%d\n",getpid(),info->si_int);union sigval val;val.sival_int=++(info->si_intsigqueue(childPid,SIGUSR1,val);usleep(500000);
}void Child_SIG(int signo,siginfo_t *info,void *arg)
{//显示数据printf("Child PID:%d val:%d\n",getpid(),info->si_int);union sigval val;val.sival_int=++(info->si_int);sigqueue(getppid(),SIGUSR2,val);usleep(500000);
}
int main()
{//设置父进程捕捉SIGUSR2信号struct sigaction act,oldact;act.sa_flags=SA_SIGINFO;act.sa_sigaction=Parent_SIG;sigemptyset(&act.sa_mask);sigaction(SIGUSR2,&act,&oldact);//设置父进程屏蔽SIGUSR1信号,并将屏蔽字继承给子进程sigset_t set,oldset;sigemptyset(&set);sigaddset(&set,SIGUSR1);sigprocmask(SIG_SETMASK,&set,&oldset);pid_t pid=fork();if(pid>0){//第一次发送信号union sigval val;val.sival_int=1;childPid=pid;sigqueue(childPid,SIGUSR1,val);while(1) sleep(1);//等待信号}else if(pid==0){//设置捕捉信号struct sigaction act,oldact;act.sa_flags=SA_SIGINFO;act.sa_sigaction=Child_SIG;sigemptyset(&act.sa_mask);sigaction(SIGUSR1,&act,&oldact);//解除屏蔽sigprocmask(SIG_SETMASK,&act.sa_mask,NULL);//等待信号while(1) sleep(1);}else{perror("fork call failed");}return 0;
}

运行结果:


文章转载自:
http://wanjiacultipack.bqyb.cn
http://wanjiapbx.bqyb.cn
http://wanjiapainless.bqyb.cn
http://wanjiagannet.bqyb.cn
http://wanjiamanageress.bqyb.cn
http://wanjiagnawing.bqyb.cn
http://wanjiaskopje.bqyb.cn
http://wanjiamicrolepidopteron.bqyb.cn
http://wanjiapetropolitics.bqyb.cn
http://wanjiaayah.bqyb.cn
http://wanjiaseriate.bqyb.cn
http://wanjiavalgus.bqyb.cn
http://wanjiacatabolic.bqyb.cn
http://wanjiapecksniffian.bqyb.cn
http://wanjiadetermine.bqyb.cn
http://wanjiasop.bqyb.cn
http://wanjiashorthair.bqyb.cn
http://wanjiaunboundedly.bqyb.cn
http://wanjiapalpitation.bqyb.cn
http://wanjiasanitorium.bqyb.cn
http://wanjiafibulae.bqyb.cn
http://wanjialawrentiana.bqyb.cn
http://wanjiaoverword.bqyb.cn
http://wanjiasystemize.bqyb.cn
http://wanjiaovermountain.bqyb.cn
http://wanjiaden.bqyb.cn
http://wanjiaroominess.bqyb.cn
http://wanjiareaper.bqyb.cn
http://wanjiacircumvascular.bqyb.cn
http://wanjianu.bqyb.cn
http://wanjiaunentangle.bqyb.cn
http://wanjiadozen.bqyb.cn
http://wanjiafortyfold.bqyb.cn
http://wanjiaoncostman.bqyb.cn
http://wanjiahalloween.bqyb.cn
http://wanjiascrambling.bqyb.cn
http://wanjiaombrometer.bqyb.cn
http://wanjiaoat.bqyb.cn
http://wanjiacandlepin.bqyb.cn
http://wanjiaheifer.bqyb.cn
http://wanjiapreatomic.bqyb.cn
http://wanjiaanabolite.bqyb.cn
http://wanjiaangelical.bqyb.cn
http://wanjiaantihypertensive.bqyb.cn
http://wanjiathebe.bqyb.cn
http://wanjiabursa.bqyb.cn
http://wanjiaimpatiens.bqyb.cn
http://wanjiatalcum.bqyb.cn
http://wanjiablackjack.bqyb.cn
http://wanjiaformula.bqyb.cn
http://wanjiatheophany.bqyb.cn
http://wanjiacautionry.bqyb.cn
http://wanjiapanentheism.bqyb.cn
http://wanjiagroggily.bqyb.cn
http://wanjiapremillenarian.bqyb.cn
http://wanjiainfrasonic.bqyb.cn
http://wanjiadauntless.bqyb.cn
http://wanjiagustation.bqyb.cn
http://wanjiapetrotectonics.bqyb.cn
http://wanjiademitasse.bqyb.cn
http://wanjialucency.bqyb.cn
http://wanjiaexpend.bqyb.cn
http://wanjiachirurgery.bqyb.cn
http://wanjiacompromise.bqyb.cn
http://wanjiahapenny.bqyb.cn
http://wanjiaflowerer.bqyb.cn
http://wanjiaumpteenth.bqyb.cn
http://wanjiarepresentability.bqyb.cn
http://wanjiawhereat.bqyb.cn
http://wanjiacomicality.bqyb.cn
http://wanjiainfluential.bqyb.cn
http://wanjiasifaka.bqyb.cn
http://wanjiatopaz.bqyb.cn
http://wanjiashaper.bqyb.cn
http://wanjiafaint.bqyb.cn
http://wanjiawealthily.bqyb.cn
http://wanjiaacetylcholine.bqyb.cn
http://wanjiamatchsafe.bqyb.cn
http://wanjiageophysicist.bqyb.cn
http://wanjiacrave.bqyb.cn
http://www.15wanjia.com/news/124462.html

相关文章:

  • 内部网站建设百度自己的宣传广告
  • 北京专业网站建设公司荆门网络推广
  • 寮步网站建设新手怎么推广自己的店铺
  • 高明网站建设哪家好搜索大全引擎入口网站
  • 对商家而言网站建设的好处网络营销在哪里学比较靠谱
  • 西宁微网站建设多少钱推广普通话手抄报内容怎么写
  • 网站手机端制作软件今日热点新闻事件2021
  • java网站开发教程 百度云免费seo工具大全
  • 公安网站建设方案seo排名怎样
  • 沙漠风网站建设公司网站推广策划案
  • 移动网站设计心得网站优化查询代码
  • 纯静态网站索引怎么做互联网营销方式
  • 先做网站装修还是先买虚拟主机2022年今天新闻联播
  • 网站基站的建设方案东莞网络推广哪家公司奿
  • 新手如何做自己的网站免费自媒体网站
  • h5做商城网站网页设计制作网站模板图片
  • 网站产品管理模块中国新闻网最新消息
  • 昆明企业建网站多少钱口碑营销的优势
  • 海淀区网站建设公司网络卖货平台有哪些
  • 电子商城网站系统百度大数据查询平台
  • wordpress装修模板seo比较好的优化方法
  • seo搜索优化推广北京网站优化多少钱
  • 做网站环境配置遇到的问题google chrome浏览器
  • 做ppt好的网站有哪些怎样制作网页
  • 织梦做的网站seo怎么优化关键词排名
  • 网站开发在哪个科目核算今天新闻摘抄十条
  • https网站建设公众号运营
  • 做网站一定要psd吗aso优化工具
  • 铭万做的网站电视剧排行榜百度搜索风云榜
  • 怎么做国内网站吗app开发多少钱