易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux中wait用法


Linux中wait用法:
系统中的僵尸进程都要由wait系统调用来回收。
函数原型:
#include<sys/types.h>
#include<sys/wait.h>
pid_t wait(int *status);
进程一旦调用了wait就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经退出,如果让它找到了这样一个已经变成僵尸的子进程,wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子进程,wait就会一直阻塞在这里,直到有一个出现为止。
参数status用来保存被收集进程退出时的一些状态,它是一个指向int类型的指针。但如果我们对这个子进程是如何死掉毫不在意,只想把这个僵尸进程消灭掉,(事实上绝大多数情况下,我们都会这样想),我们就可以设定这个参数为NULL,就像下面这样:
pid = wait(NULL);
如果成功,wait会返回被收集的子进程的进程ID,如果调用进程没有子进程,调用就会失败,此时wait返回-1,同时errno被置为ECHILD。
例子:
/*wait.c*/
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
      
int main()
{
       pid_t pc, pr;
      
       pc = fork();
       if ( pc < 0 ) /* 如果出错 */
  {
         printf("create child prcocess error: %s\n", strerror(errno));
         exit(1);
  }
       else if ( pc == 0) /* 如果是子进程 */
       {
         printf("I am child process with pid %d \n", getpid());
         sleep(3);/* 睡眠3秒钟 */
         exit(0);
  }
       else /* 如果是父进程 */
      &nbs


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

linux下matlab的一个例子

题目:在Linux下的MATLAB中运行MATLAB程序并在web中显示结果
我做了一个例子主要有5个文件:
 webtttt.html  webtttt1.html  webtttt2.html  webtttttempt.html  webttttrnd.m
1.webtttt1.html文件
 <!-- $Revision: 1.2 $ -->
<HTML>
<HEAD>
<TITLE>Simulat ......

linux ulimit用法简介

工作中用到gdb来分析程序崩溃生产的core文件问题:
这里从网上查来的一个命令用法:
1,说明:
      ulimit用于shell启动进程所占用的资源.
      2,类别:
      shell内建命令
      3,语法格式:
   ......

嵌入式linux烧写(一)—BootLoader的裁剪和编译


一、BootLoader的概念
   BootLoader是系统加电启运行的第一段软件代码.回忆一下PC的体系结构我们可以知道,PC机中的引导加载程序由BIOS(其本质就是一段固件程序)和位于硬盘MBR中的引导程序一起组成。BIOS在完成硬件检测和资源分配后,将硬盘MBR中的引导程序读到系统的RAM中,然后将控制权交给引导程序。引 ......

Linux的裁剪

http://www.mcublog.com/more.asp?name=sharkdn&id=8810
=======================================
好些时候,我们需要一个只要一张软盘就能启动Linux 的系统,比如说做路由器。但是我们该怎样做呢? 也就是说我们要把Kernel和FileSystem都做在一张3.5'的盘上。我们先把FileSystem 分解成如下几个部分吧。
  1. /b ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号