zoukankan      html  css  js  c++  java
  • 第16章 进程管理

    system 函数:
    
    在Perl中,启动子进程最简单的方法是用system 函数,例如要调用Unix的date命令,
    
    system "date";
    
    这会创建一个子进程来运行date命令
    
    [root@jhoa 20150304]# cat a1.pl 
    #!/usr/bin/perl
    if (system 'date'){print "$!--1------
    ";}else
      {print "$!--2------
    ";}
    [root@jhoa 20150304]# perl a1.pl 
    Wed Mar  4 15:36:32 CST 2015
    --2------
    
    system调用后,返回值为shell的返回值 0为真 所以这里是反的
    [root@jhoa 20150304]# cat a2.pl 
    system 'sleep 100';
    
    
    [oracle@jhoa perl]$ ps -ef | grep 15653
    root     15653  6886  0 16:05 pts/0    00:00:00 perl a2.pl
    root     15654 15653  0 16:05 pts/0    00:00:00 sleep 100
    oracle   15658  7246  0 16:06 pts/1    00:00:00 grep 15653
    
    system 会创建一个新的子进程
    
    
    exec 函数会导致perl进程自己去执行任务
    
    [oracle@jhoa perl]$ ps -ef | grep perl
    oracle   15700  7246  0 16:08 pts/1    00:00:00 grep perl
    [oracle@jhoa perl]$ ps -ef | grep sleep
    root     15687  6886  0 16:07 pts/0    00:00:00 sleep 100
    oracle   15702  7246  0 16:08 pts/1    00:00:00 grep sleep
    
    
    
    
    发送及接收信号:
    
    
    [root@jhoa 20150304]# ps -ef | grep perl
    oracle   15819  7290  0 17:09 pts/2    00:00:00 perl client.pl
    root     15827  6886  0 17:09 pts/0    00:00:00 grep perl
    
    
    [root@jhoa 20150304]# cat kill.pl 
    kill 2,15819 or die "Cannot signal 15819 with SIGINT:$!";
    
    [root@jhoa 20150304]# perl kill.pl 
    [root@jhoa 20150304]# ps -ef | grep perl
    root     15878  6886  0 17:11 pts/0    00:00:00 grep perl
    
    
    

  • 相关阅读:
    数据结构实验2-迷宫
    离散实验4
    关系代数中的除法运算
    数据库中什么叫象集
    (转)汇编-补码
    2014022201
    20140222
    2014022101
    代码20140221
    代码20140215
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351843.html
Copyright © 2011-2022 走看看