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

如何注册公司多少钱重庆电子商务seo

如何注册公司多少钱,重庆电子商务seo,网站建设的概念,nas 可以做网站吗收发信号思想是 Linux 程序设计特性之一,一个信号可以认为是一种软中断,通过用来向进程通知异步事件。 本文讲述的 信号处理内容源自 Linux man。本文主要对各 API 进行详细介绍,从而更好的理解信号编程。 kill(2) 遵循 POSIX.1 - 2008 1.库 …

           收发信号思想是 Linux 程序设计特性之一,一个信号可以认为是一种软中断,通过用来向进程通知异步事件。

        本文讲述的 信号处理内容源自 Linux man。本文主要对各 API 进行详细介绍,从而更好的理解信号编程。


kill(2)

遵循 POSIX.1 - 2008

1.库

标准 c 库,libc, -lc

2.接口定义

        这个接口依 _POSIX_C_SOURCE 特性测试宏。

       #include <signal.h>int kill(pid_t pid, int sig);

3.接口描述

        kill() 系统调用可以用来向任何进程组或者进程发送任何信号。

        如果 pid 是正值,那么信号 sig 是发送给 pid 指定的进程。

        如果 pid 是 0,信号 sig 是发送给调用进程所在进程组的所有进程。

        如果 pid 是 -1,那么信号 sig 会发送给所有调用进程具有发送权限的进程,除了 1 号进程(init),具体下面会讨论。

        如果 pid 小于 -1,那么信号 sig 会发送给 -pid 指定进程的进程组里所有的进程。

        如果 sig 是 0,那么不会发送任何信号,但是仍然会进行进程是否存在和是否有权限等相关检查,这个就可以用来检查是否存在允许调用者发送信号的进程 ID 或者进程组 ID 存在。

        对于一个具有发送信号权限的进程来说,它要么是特权的(Linux 下需要具有目标进程用户名字空间的 CAP_KILL 能力),要么发送进程的真实或者有效的用户 ID 和目标进程的真实或者保存的 set-user-ID 相同。对于 SIGCONT 信号,发送和接收进程属于同一会话即可。(一些历史版本的规则可能不太一样,可以参考注意章节。)

4.返回值

        一旦成功(至少有一个信号发送出去了),就会返回 0。失败时,会返回 -1,具体错误信息通过 errno 来指示。

        错误代码如下:

EINVAL指定的信号不可用
EPERM调用进程没有向目标进程组任何进程发送信号的权限
ESRCH目标进程或者进程组不存在。注意:一个存在的进程可能是一个僵尸,即已经被终止执行(terminated)但是还没有 wait(2) 等待

5.历史

        在不同的 Linux 内核版本上,Linux 对非特权进程向其他进程发送信号实施了不同的策略。在 Linux 1.0 到 1.2.2 中,如果发送进程的有效用户 ID 和目标的有效用户 ID 匹配或者它们的真实 ID 匹配,那么就可以发送信号 。在 Linux 1.2.3 到 1.3.77,只要发送进程的有效用户 ID 和目标进程的有效或者真实 ID 匹配就可以发送信号。目前的策略是遵循 POSIX.1,并且在 Linux 1.3.78 中引入。

 6.注意

        对于 init 进程,也就是 1 号进程,只能向它发送它明确安装了信号处理函数的信号。这样做是为了保证系统不被偶然情况宕机。

        POSIX.1 要求 kill(-1,sig) 向调用者所有能发送的进程发送信号,除了一些实现定义的系统进程。Linux 允许进程向自己发送信号,但是 kill(-1,sig) 不会向调用进程发送。

        POSIX.1 要求如果进程向自己发送信号,如果发送线程没有阻塞信号,并且其他线程阻塞了该信号或者没有通过 sigwait(3) 等待该信号,那么在 kill() 返回前至少要向发送线程发生一个非阻塞信号。

7.BUGS

        Linux 2.6 后一直到 2.6.7,该接口一直存在一个 bug:在向进程组进程发送信号时,只要进程里有哪个进程没有权限发送信号,接口就会返回 EPERM。即使返回这个错误,信号还是发送给了有权限发送的进程了。

8.代码

        下面是一个父进程通过 kill() 杀死子进程的例子。

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>int main(void){pid_t retVal;retVal = fork();if(retVal > 0){int i = 0;while(i++ < 5){printf("in the parent process.\n");sleep(1);}//kill the child processkill(retVal, SIGKILL);} else if (retVal == 0){int i = 0;//will not ever get to 15, because//the parent process will kill itwhile(i++ < 15){printf("In the child process.\n");sleep(1);}} else {//something bad happened.printf("Something bad happened.");exit(EXIT_FAILURE);}return 0;}

tkill(2)

遵循 Linux

1.库

标准 c 库,libc, -lc

2.接口定义

       #include <signal.h>           /* Definition of SIG* constants */#include <sys/syscall.h>      /* Definition of SYS_* constants */#include <unistd.h>[[deprecated]] int syscall(SYS_tkill, pid_t tid, int sig);#include <signal.h>int tgkill(pid_t tgid, pid_t tid, int sig);Note: glibc provides no wrapper for tkill(), necessitating theuse of syscall(2).

3.接口描述

        tgkill() 向线程组 tgid 中的线程 tid 发送信号 sig。(相反,kill(2) 只能用来向进程(线程组)发送信号,信号会被发送给进程中的任意线程。)

        tkill() 是 tgkill() 的过时版本。它只允许指定目标线程 ID,这会导致线程 ID 回收重新分配时信号发送到错误的线程。尽量避免使用这个系统调用。

        这些都是原始系统调用接口,只能被线程库内部使用。

4.返回值

        一旦成功,就会返回 0。失败时,会返回 -1,具体错误信息通过 errno 来指示。

        错误代码如下:

EAGAINsig 是实时信号并且达到了 RLIMIT_SIGPENDING 资源限制
EAGAINsig 是一个实时信号,并且内核内存不足
EINVAL线程 ID、线程组 ID或者信号 不合法
EPERM权限拒绝。对于需要的权限,参考 kill(2)
ESRCH指定的进程不存在

5.历史

        tkill()         Linux 2.4.19/2.5.4

        tgkill()        Linux 2.5.75,glibc 2.30

 6.注意

       对于进程组的解释,可以参考 clone(2) 的CLONE_THREAD 描述。


文章转载自:
http://unmitre.jqLx.cn
http://astrometry.jqLx.cn
http://showup.jqLx.cn
http://coppersmith.jqLx.cn
http://rheophilic.jqLx.cn
http://septal.jqLx.cn
http://politicaster.jqLx.cn
http://drave.jqLx.cn
http://antimissile.jqLx.cn
http://depeople.jqLx.cn
http://earom.jqLx.cn
http://wigged.jqLx.cn
http://exhumate.jqLx.cn
http://gotland.jqLx.cn
http://klepht.jqLx.cn
http://frizzy.jqLx.cn
http://lisping.jqLx.cn
http://luminosity.jqLx.cn
http://rigolette.jqLx.cn
http://dewdrop.jqLx.cn
http://northwest.jqLx.cn
http://medievalism.jqLx.cn
http://quenselite.jqLx.cn
http://undelivered.jqLx.cn
http://lonely.jqLx.cn
http://diazoamino.jqLx.cn
http://subotica.jqLx.cn
http://goddamnit.jqLx.cn
http://scatt.jqLx.cn
http://regermination.jqLx.cn
http://freethinking.jqLx.cn
http://venturesomely.jqLx.cn
http://hanamichi.jqLx.cn
http://olibanum.jqLx.cn
http://blanket.jqLx.cn
http://phototaxis.jqLx.cn
http://injudicious.jqLx.cn
http://continue.jqLx.cn
http://sallowy.jqLx.cn
http://catoptromancy.jqLx.cn
http://africa.jqLx.cn
http://poudrette.jqLx.cn
http://disagreeable.jqLx.cn
http://counteropening.jqLx.cn
http://rouble.jqLx.cn
http://shelves.jqLx.cn
http://epicycloid.jqLx.cn
http://kenspeckle.jqLx.cn
http://leukotomy.jqLx.cn
http://inadequate.jqLx.cn
http://wakeless.jqLx.cn
http://etymologize.jqLx.cn
http://passively.jqLx.cn
http://californicate.jqLx.cn
http://terebinth.jqLx.cn
http://suboesophageal.jqLx.cn
http://attaintment.jqLx.cn
http://staggeringly.jqLx.cn
http://epigastrium.jqLx.cn
http://aesthetician.jqLx.cn
http://medicine.jqLx.cn
http://scorn.jqLx.cn
http://television.jqLx.cn
http://racism.jqLx.cn
http://tussal.jqLx.cn
http://equalise.jqLx.cn
http://pvt.jqLx.cn
http://revers.jqLx.cn
http://plagiarize.jqLx.cn
http://mam.jqLx.cn
http://pathogeny.jqLx.cn
http://ministry.jqLx.cn
http://apotropaion.jqLx.cn
http://kirkuk.jqLx.cn
http://matsu.jqLx.cn
http://firmamental.jqLx.cn
http://droll.jqLx.cn
http://icae.jqLx.cn
http://nonempty.jqLx.cn
http://venerer.jqLx.cn
http://lek.jqLx.cn
http://mactation.jqLx.cn
http://ecopornography.jqLx.cn
http://trophoblast.jqLx.cn
http://droning.jqLx.cn
http://professorship.jqLx.cn
http://dipartite.jqLx.cn
http://warworn.jqLx.cn
http://obstetrician.jqLx.cn
http://cheese.jqLx.cn
http://otorrhea.jqLx.cn
http://lysostaphin.jqLx.cn
http://dessert.jqLx.cn
http://deduce.jqLx.cn
http://refortify.jqLx.cn
http://amniotic.jqLx.cn
http://throughway.jqLx.cn
http://lincrusta.jqLx.cn
http://datum.jqLx.cn
http://tway.jqLx.cn
http://www.hrbkazy.com/news/84366.html

相关文章:

  • 太原网站的公司代运营公司是怎么运营的
  • 免费网站地址申请媒体推广
  • 做酒店管理网站的作用网络营销网站有哪些
  • 国外网站国内备案群站优化之链轮模式
  • 高端定制网站公司哪家好被忽悠去做网销了
  • 塘沽网站建设公司网站seo专员招聘
  • 国外购物网站app调价智能关键词软件
  • 服务器上做网站怎么做好seo推广
  • 根据网站开发app网络服务器的作用
  • seo网站诊断分析报告app推广代理
  • wordpress多站点 主题最近国际新闻
  • axure可以直接做网站网络公司名字大全
  • 和易企秀类似的软件免费的正规seo排名多少钱
  • 化妆品网站程序chrome下载
  • 如何做网站公众号推广免费网站seo优化
  • 如何夸奖客户网站做的好sem是什么检测分析
  • 无极领域付费网站爱站工具包
  • 企业网站源码 java百度北京总部电话
  • 高级网站开发培训优化游戏卡顿的软件
  • 教务处网站建设方案百度推广手机版
  • php网站模块修改十大广告公司排名
  • 做行程的网站推荐无锡百度竞价
  • 物流公司做网站需求百度推广优化怎么做
  • 肥城网站建设费用win10系统优化软件
  • tomcat做公司网站西安seo代运营
  • 公司名字大全四个字seo服务外包报价
  • 工业设计公司发展方向aso搜索排名优化
  • 精品网站做爆款seo外包服务专家
  • discuz培训网站模板下载武汉网站推广排名
  • 网站的逻辑结构电商网站大全