学习nginx已经有一个多月了,觉得越来越吃力了,主要原因自己总结了一下:1平台是基于linux的,以前几乎没有接触过linux,而nginx使用了很多linux的函数;2就是进程,这个东西接触的也很少,linux的多进程更不用说,而现在正好看到这里,觉得异常的吃力,这不看到nginx守护进程的建立,就找资料好好学习一下,所以本文已学习fork为主要内容。
好了,先看一下nginx的守护进程的建...
分类:
系统相关 时间:
2014-10-11 22:03:37
阅读次数:
373
一、多进程
在Unix/Linux下,为我们提供了类似c中头文件中的的fork()函数的接口,这个函数位于os模块中,同样与c中类似,对于父进程fork()调用返回子进程ID,对于子进程返回0
import os, time
pid = os.fork()
if pid == 0:
while True:
print 'child process'...
分类:
编程语言 时间:
2014-10-11 18:46:15
阅读次数:
278
大部分人使用的可能都是github.com/robfig/写的cron模块,但是这个模块里只有动态添加任务,却没有动态删除任务的func,所以经过一番查找,发现了一个比较好的cron模块:https://github.com/jakecoffman/cron这个模块虽然fork的人比较少但是个人认为还是不错的,他基本是robfig..
分类:
编程语言 时间:
2014-10-11 15:32:16
阅读次数:
4134
#includepid_t fork(void); 返回:在子进程中为0,在父进程中为子进程IO,...
分类:
其他好文 时间:
2014-10-11 01:41:34
阅读次数:
572
一、linux进程
linux是一个多用户多任务的操作系统。
多用户是指多个用户可以在同一时间使用计算机;
多任务是指linux可以同时执行几个任务。
进程简单来说就是运行中的程序,Linux系统的一个重要特点是可以同时启动多个进程。根据操作系统的定义:进程是操作系统资源管理的最小单位。
1.Linux进程的概念
进程是一个动态的实体,是程序一次执行过程,并且进程是操作系统资源分配的基...
分类:
系统相关 时间:
2014-10-10 20:20:54
阅读次数:
224
摘要:本文主要讲述如何在进程中运行新代码,以及exec系列函数的基本使用方法.用函数fork创建子进程后,如果希望在当前子进程中运行新的程序,可以调用exec函数执行另一个程序....
分类:
其他好文 时间:
2014-10-10 15:17:14
阅读次数:
207
今天在看代码时发现一段有意思的代码#include#include#include#includeint main(){ int pid=1; if(pid=fork()<0) { perror("fork() error!\n...
分类:
其他好文 时间:
2014-10-10 14:50:40
阅读次数:
173
参考《Linux/Unix系统编程手册》变成daemon,一个程序需要完成以下步骤:1、执行一个fork(),父进程退出,子进程继续执行。(daemon成为了init进程的子进程)--假设daemon是从命令行启动,父进程的终止会被shell发现,之后shell会显示出另一个shell提示符并让子进程在后台运行;..
分类:
编程语言 时间:
2014-10-09 02:41:28
阅读次数:
226
在Fork/Join框架中,提交任务的时候,有同步和异步两种方式。以前使用的invokeAll()的方法是同步的,也就是任
务提交后,这个方法不会返回直到所有的任务都处理完了。而还有另一种方式,就是使用fork方法,这个是异步的。也
就是你提交任务后,fork方法立即返回,可以继续下面的任务。这个线程也会继续运行。
下面我们以一个查询磁盘的以log结尾的文件的程序例子来说明异步的用法...
分类:
编程语言 时间:
2014-10-09 01:43:47
阅读次数:
117
在Java7中,JDK提供对多线程开发提供了一个非常强大的框架,就是Fork/Join框架。这个是对原来的Executors更
进一步,在原来的基础上增加了并行分治计算中的一种Work-stealing策略,就是指的是。当一个线程正在等待他创建的
子线程运行的时候,当前线程如果完成了自己的任务后,就会寻找还没有被运行的任务并且运行他们,这样就是和
Executors这个方式最大的区别,更加有...
分类:
编程语言 时间:
2014-10-08 02:41:44
阅读次数:
256