码迷,mamicode.com
首页 > 其他好文 > 详细

go 笔记

时间:2017-04-22 15:43:42      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:stdout   nil   ror   信号   对象   out   tom   启动   nal   

ipc{
1.通信{
数据传送{
pipe 传字节流
,MessageQueue 传结构化消息对象
}
共享内存(最快)
}
2.信号 Signal(唯一异步的IPC)
3.同步 semaphore (最重要)
}
exec 把一个新程序加载到自己内存中,替换数据段,代码段,堆,stack

父进程先结束,他子进程会被内核启动进程收养
所以系统调用都是原子操作

pid := os.Getpid()
ppid := os.Getppid()

sync/atomic
os/exec

cmd0 := exec.Command("echo","-n","my fist command")
stdout0 ,err := cmd0.StdoutPipe()
output0 := make([]byte,30)
n,err :=stdio0.Read(output0)
if err != nil{
fmt.Printf("error: %s\n",err)
}
fmt.Printf("%s\n",output0[:n])
命名管道
reader ,writer,err := os.Pipe()
reader,writer := io.Piple() //内存管道
信号: os/signal
没有32,33
1-31 标准信号(不可靠信号); 34-64 实时信号(可靠信号)
runtime/debug.SetMaxThreads
runtime.GOMAXPROCS

go 笔记

标签:stdout   nil   ror   信号   对象   out   tom   启动   nal   

原文地址:http://www.cnblogs.com/anjunact/p/6747851.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!