1、runv/kill.go

Action: func(context *cli.Context)

该函数做的工作很简单,就是通过grpc客户端,发送一个grpc请求而已,如下:

c.Signal(netcontext.Background(), &types.SignalRequest{

    Id:    container,
    Pid:    "init",
    Signal:  uint32(signal),
})

  

2、runv/containerd/api/grpc/server/server.go

func (s *apiServer) Signal(ctx context.Context, r *types.SignalRequest) (*types.SignalResponse, error)

该函数的工作也非常简单,仅仅只是调用了函数s.sv.Signal(r.Id, r.Pid, int(r.Signal))而已,接着返回&types.SignalResponse{}

3、runv/supervisor/supervisor.go

func (sv *Supervisor) Signal(container, processId string, sig int) error

首先调用p := sv.getProcess(container, processId)获取Process对象,如果p != nil,则调用p.signal(sig)

4、runv/supervisor/process.go

func (p *Process) signal(sig int) error

如果p是init进程,则调用p.ownerCont.ownerPod.vm.KillContainer(p.ownerCont.Id, syscall.Signal(sig)) kill容器。不过runv对于kill其他进程还尚不支持。

最新文章

  1. 利用CNN进行人脸年龄预测
  2. Hibernate 测试分析 好多题都是没认真看题错了。
  3. Spark RDDRelation
  4. codeforces #309 div1 D
  5. Ajax 生成流文件下载 以及复选框的实现
  6. javaScript高级程序设计笔记 2
  7. 自定义支持多行显示的RadioGroup
  8. iOS-Mac上进行Fluttrt的安装
  9. 严重: A child container failed during start
  10. JVM-String.intern()
  11. 移动 Ubuntu16.04 桌面左侧任务栏到屏幕底部
  12. A1022. Digital Library
  13. 目标检测-yolo2
  14. dir命令详解
  15. Oracle日期格式化以及extract函数的使用
  16. 第十周PSP&进度条
  17. mysql如何查询日期的列表?
  18. Hadoop Gateway 部署
  19. codeforces 484B - LubaAndTicket - 贪心
  20. 系统架构设计方法论——TOGAF

热门文章

  1. DataSet导出到Excel,并生成文件(C#实现,可合并行和列)
  2. 南昌PHP程序员的工资水平据说可达到8000了
  3. 【NOIP训练】【数论】超级计算机
  4. String系列
  5. PHP学习笔记:数据库学习心得
  6. 我所了解的WEB开发(4) - 神奇的URL
  7. java微信开发(wechat4j)——wechat4j配置文件解读
  8. javascript中||和&&代替if
  9. MS10-046漏洞测试
  10. 【转】R语言笔记--颜色的使用