关不掉的进程(Perl)

今天遇到了一个问题,在服务器上开设的BitComet总是会莫名其妙的死掉,于是必须找到一种方法让他死掉之后能再一次启动。

这类问题高手也许很容易就能解决,但是像我这种小笨笨,怎么想也想不出好的办法,只好使用笨办法了。

use Win32::Process;
use Win32;

sub ErrorReport
{
 print Win32::FormatMessage( Win32::GetLastError() );
}

while(1)
{
 ($Second, $Minute, $Hour, $Day, $Month, $Year, $WeekDay, $DayOfYear, $IsDST) = localtime(time);
 $Year += 1900;
 $dt = "$Year-$Month-$Day $Hour:$Minute:$Second";
 print "Start at $dt ... /n";
 Win32::Process::Create($ProcessObj, "G://BitComet.exe",
                       "",
                       0,
                       NORMAL_PRIORITY_CLASS,
                       ".")|| die ErrorReport();
 $ProcessObj->Suspend();
 $ProcessObj->Resume();
 $ProcessObj->Wait(INFINITE);
}

exit;

看到这段程序,其中最关键的就是那个while(1)循环,用这个循环,然后配合里面的内容,就可以让BitComet一直运行着,死掉、就在运行。

虽然说很简单,但是因为没有经验,所以也不知道会出什么问题,是否存在隐患,因而希望大家共同交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值