背景知识 进程即正在执行的一个过程,进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的 进程与程序 进程是正在运行的程序,程序是程序员编写的一堆代码,也就是一堆字符,当这 ...
分类:
其他好文 时间:
2019-07-08 00:04:08
阅读次数:
118
07.07自我总结 Event事件 一.导入模块 二.概念 线程间状态同步:即将一个任务丢到子进程中,这个任务将异步执行,如何获取到这个任务的 执行状态 注意: 执行状态和执行结果不是同一个概念,异步回调拿到的是任务的执行结果 假设 一个线程 负责启动服务器 启动服务器需要花一定的时间 另一个线程作 ...
分类:
其他好文 时间:
2019-07-07 17:27:54
阅读次数:
97
多进程版本相对也很简单,父进程负责接收和转换套接字,接收后Fork出子进程去处理页面请求和返回所需求的页面。 首先是父进程: 父进程Accept后不对请求进行处理,而是直接关闭所连接的套接字 这是因为for后,父子进程间的文件描述符只是拷贝,他们都指向同一个套接字,对父进程来说,这个主动套接字是多余 ...
分类:
系统相关 时间:
2019-07-06 22:07:13
阅读次数:
170
有时我们会遇到这样的需求,在一个主进程中启动另外一个进程,而在 Go 中可以使用 exec 包的 Cmd 来轻松实现这类需求,例如代码: 这段代码的含义是: 使用 nc -u -l 8888 来模拟一个常驻进程,然后通过 Go 的 exec.Cmd 来运行它,并且 Go 代码不退出,运行代码: 如何 ...
分类:
系统相关 时间:
2019-07-04 17:17:27
阅读次数:
143
主进程创建守护进程 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemonic processes are not allowed to have children 注意:进程之间是互相独立的,主进程代码运行结束,守 ...
分类:
系统相关 时间:
2019-07-04 09:42:54
阅读次数:
126
将任务放置在子进程或其他线程中执行,在子进程或其他线程执行超时,则父进程或主线程程序并退出 fork进程 fork一个子进程,当子进程早于父进程退出时,需要对子进程进行处理,否则子进程会变成zombie进程如下图,直到父进程执行完被清理之后,该子进程变为init的子进程,从而被清理。使用signal ...
分类:
系统相关 时间:
2019-07-04 00:13:59
阅读次数:
133
rdb rdb:在指定的时间间隔内将内存中的数据集快照写入磁盘,恢复时将快照文件直接读到内存; redis会单独创建一个fork子进程来进行持久化,先将数据写入到一个临时文件中,待持久化操作结束后,用这个临时文件替换上次持久化好了的文件。 默认触发条件: 1分钟修改1万次,或5分钟修改10次,或15 ...
分类:
其他好文 时间:
2019-07-02 21:18:33
阅读次数:
148
这里是一部分内容,还会做修改。 一:目的及内容 学习fork(),exec,pthread库函数的使用,阅读源码,分析fork,exec,pthread_create函数的机理 代码实现: 进程A创建子进程B 子进程B与父进程A分别对应不同的可执行体:A打印Hello world,B实现sum累加 ...
分类:
编程语言 时间:
2019-07-02 00:40:57
阅读次数:
224
IPC(Inter-Process Communication,进程间通信)实现方式 1)管道: - 管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程之间使用(进程的亲缘关系通常是指父子进程关系) 2)有名管道(FIFO): - 有名管道也是半双工的通信方式,但是允许在没有 ...
分类:
其他好文 时间:
2019-06-28 18:20:14
阅读次数:
129
SYNOPSIS #include <stdio.h> FILE *popen(const char *command, const char *type); int pclose(FILE *stream); 描述 popen() 函数 用 创建管道 的 方式 启动 一个 进程, 并调用 shel ...
分类:
其他好文 时间:
2019-06-27 16:21:50
阅读次数:
98