小编Tha*_*Guy的帖子

Perl进程解析

我在perl的linux机器上循环进程.我想显示特定进程的总cpu,但我想显示进程的每个实例的总用量.例如:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
northriv 10228  0.0  0.2  23692  8084 ?        S    Sep18   0:00 /usr/local/apache2/bin/httpd -k start
northriv 10229  0.0  0.2  23692  8084 ?        S    Sep18   0:00 /usr/local/apache2/bin/httpd -k start
northriv 10186  0.0  0.2  23692  8084 ?        S    Sep18   0:00 /usr/local/apache2/bin/httpd -k start
northriv 10187  0.0  0.2  23692  8084 ?        S    Sep18   0:00 /usr/local/apache2/bin/httpd -k start
speaktra 25535  0.2  1.0  46788 33212 ?        S    Sep23   6:04 /usr/local/apache2/bin/httpd -k start
speaktra 25547  0.2 …
Run Code Online (Sandbox Code Playgroud)

linux perl

5
推荐指数
1
解决办法
892
查看次数

Perl模块ForkManager无法正常工作

我的错误如下

当你在/usr/lib/perl5/site_perl/5.8.6/Parallel/ForkManager.pm第463行的子进程中时,无法启动另一个进程.

我的代码中有问题的部分如下,在我的代码下面是forkmanager失败的子例程,我无法弄清楚原因.没有forkmanager,我可以运行得很好.

my $pm = new Parallel::ForkManager($MAX_PROCESSES);
for (0..$SCOUNT)
{
my $pid = $pm->start and next;
    my %shash = ();
    %shash =
    (   ID      => "$SREF->[$_]->[0]",
        typeID  => "$SREF->[$_]->[1]",
        extIP   => "$SREF->[$_]->[2]",
        intIP   => "$SREF->[$_]->[3]",
        NAME    => "$SREF->[$_]->[4]",
        buTYPE  => "NULL"
    );
    if ($shash{typeID} =~ /^(4|16|17|25|27|28|42|49|50|51|54|58|60|63|19)$/){$shash{buTYPE} = 'LINUX DEDICATED';}
    if ($shash{typeID} =~ /^(11|14|22|32|34|36|37|46)$/)                    {$shash{buTYPE} = 'LINUX FULL';}
    if ($shash{typeID} =~ /^(44)$/)                                         {$shash{buTYPE} = 'EMAIL MARKETER';}
    if ($shash{typeID} =~ /^(43)$/)                                         {$shash{buTYPE} = 'TYip1';}
    if ($shash{typeID} =~ /^(45)$/)                                         {$shash{buTYPE} = 'DDDOMAINS';} …
Run Code Online (Sandbox Code Playgroud)

perl multithreading fork

4
推荐指数
1
解决办法
1883
查看次数

标签 统计

perl ×2

fork ×1

linux ×1

multithreading ×1