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

简述网站开发的基本流程图介绍家乡的网页设计代码

简述网站开发的基本流程图,介绍家乡的网页设计代码,菏泽网站建设信息,百度公司招聘岗位最近帮着同事搞了一下嵌入式的gtk界面, 中间有用到系统signal来进行进程通讯, 做个简单的记录在使用linux系统信号量之前需要先了解一下信号量基础知识, 这里给出一个参考博文, 讲的很仔细 : https://www.cnblogs.com/taobataoma/archive/2007/08/30/875743.html下面是我摘录的…最近帮着同事搞了一下嵌入式的gtk界面, 中间有用到系统signal来进行进程通讯, 做个简单的记录在使用linux系统信号量之前需要先了解一下信号量基础知识, 这里给出一个参考博文, 讲的很仔细 : https://www.cnblogs.com/taobataoma/archive/2007/08/30/875743.html下面是我摘录的一些个人认为的关键点 :软中断信号(signal又简称为信号)用来通知进程发生了异步事件。进程之间可以互相通过系统调用kill发送软中断信号内核也可以因为内部事件而给进程发送信号通知进程发生了某个事件注意信号只是用来通知某进程发生了什么事件并不给该进程传递任何数据收到信号的进程对各种信号有不同的处理方法, 处理方法可以分为三类第一种是类似中断的处理程序对于需要处理的信号进程可以指定处理函数由该函数来处理第二种方法是忽略某个信号对该信号不做任何处理就象未发生过一样第三种方法是对该信号的处理保留系统的默认值这种缺省操作对大部分的信号的缺省操作是使得进程终止了解了信号量基础之后, 我们来看一下如何发送信号通常情况下, 使用 kill 命令可以向指定进程发送指定信号, 对于不同的环境发送的信号是不同的, 使用 kill -l 可以查看能够发送信号其中有 SIGUSR1 和 SIGUSR2 两个信号提供给用户, 作为自定义信号, 那么如果想进行进程间通讯, 只需要在一个进程里调用 kill 命令, 将指定的信号发送给另一个进程, 并在另一个进程中注册对应信号的回调函数即可下面上代码, 分享我的实现方式首先是发送信号的进程1 #include 2 #include 3 #include 4 #include 56 #include 7 #include 89 //执行命令并返回结果10 void get_cmd_result(const std::string _cmd, std::string _result)11 {12 FILE *_cmd_result popen(_cmd.c_str(), r);1314 char *buf new char[256];15 memset(buf, 0, sizeof(buf));1617 fread(buf, 1, sizeof(buf), _cmd_result);18 _result buf;1920 pclose(_cmd_result);21 deletebuf;22 buf nullptr;23 }2425 //向给定进程发送SIGUSR1信号26 void send_proc_SIGUSR1(const std::string proc_name)27 {28 std::string _cmd ps -a | grep proc_name | grep -v grep | awk {print $1};29 std::stringproc_pid;3031 get_cmd_result(_cmd, proc_pid);32 std::cout proc_pid proc_pid :endl34 //system会调用 /bin/sh sh环境的信号量与bash环境的信号量语法不同35 std::string emit_SIGUSR1_to_proc kill -USR1 proc_pid;36 std::cout execute cmd : emit_SIGUSR1_to_proc :endl38 system(emit_SIGUSR1_to_proc.c_str());39 }4041 intmain()42 {43 while (true)44 {45 send_proc_SIGUSR1(sig_wait);46 sleep(2);47 }4849 return 0;50 }下面是接收信号的进程1 #include 2 #include 34 #include 56 voidsignal_handler()7 {8 std::cout get signal : SIGUSR1 :endl11 intmain()12 {13 signal(SIGUSR1, (sighandler_t)signal_handler);1415 while(true)16 {17 std::cout waiting signal... :endl sleep21 return 0;22 }这里需要注意的点就是, sh和bash环境下, kill 命令发送信号量的格式不太一样, 具体大家可以用/bin/sh 试一下 kill -l最后将两段代码分别编译生成两个程序 sig_send 和 sig_wait 并执行, 结果如下sig_send :sig_wait :以上, , 如有疏漏, 欢迎指正
http://www.pierceye.com/news/159548/

相关文章:

  • 网站建设寻找可以途径wordpress 调试php代码
  • 济南优化seo网站建设微信公众号?
  • 武夷山网站推广三星网上商城下载
  • wap网站开发文案素材网站
  • 做网站需要用什么系统昆山张浦做网站
  • 钟祥建设局网站网页样式与布局
  • j建设银行信用卡网站天河外贸网站建设
  • 石家庄网站建设招商wordpress漫画主题
  • 河南省建设厅网站查询佛山著名网站建设公司
  • 山东搜点网站建设哪家公司做网站最好
  • 云购物网站建设wordpress离线编辑
  • 有没有网站开发团队郑州网站制作电话
  • 网站怎么做登陆免费虚拟机
  • 中国移动网站备案管理系统不能用科普网站建设的支持力度
  • 谁教我做啊谁会做网站啊企业网站模板seo
  • 自己建立一个网站需要什么wordpress 平衡插件
  • 邯郸手机建站价格青海网站开发 建设
  • 苏州 手机网站免费个人简历模板电子版可填写
  • 永州内部网站建设公司wordpress 模版开发
  • 云建站优势门户网站如何建设方案
  • 网站建设收费标准不一湖州网站开发公司
  • asp制作网站青岛建网站公司
  • 人人商城程序做的网站打不开百度网盘客户端下载
  • 医疗器械注册证查询网站优化推广服务
  • 网站制作网页做简单的网站首页
  • 怎样做网站上的语种链接泰安网络犯罪案件
  • soap公司网站建设国家游戏网站
  • 网站可以用什么做安阳区号是什么
  • 网站建设实战李静如何建设网站的能力
  • 威海 网站开发做家具的网站有哪些