首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

大侠了,perl多线程有关问题

2012-04-27 
请教各位大侠了,perl多线程问题。我想用多线程模拟多用户去执行操作,但是现在遇到问题了。如下例子:我想用多

请教各位大侠了,perl多线程问题。
我想用多线程模拟多用户去执行操作,但是现在遇到问题了。

如下例子:我想用多个想成去创建多个文件夹,下面的代码是一个一个创建的,我现在想循环创建,就不知道该怎么做了,请教高手指点下。

use strict;
use Thread;

sub create_dir
{
my $subdir=$_;
if(!-d "D:/home/test/")
{
mkdir("D:/home/test/");
if(!-d $subdir)
{
mkdir($subdir);
}
}
}

sub main
{
my $thread1=Thread->new(\&create_dir,'D:/home/test/destination/');
my $thread2=Thread->new(\&create_dir,'D:/home/test/destination1/');
my $thread3=Thread->new(\&create_dir,'D:/home/test/destination2/');
my $thread4=Thread->new(\&create_dir,'D:/home/test/destination3/');

my $result1=$thread1->join();
my $result2=$thread2->join();
my $result3=$thread3->join();
my $result4=$thread4->join();
}

main();

[解决办法]
帮顶
[解决办法]

Perl code
#!/usr/bin/perl#use strict;use Threads;#我的windows用Thread要报一个很神奇的错误Undefined subroutine &threads::new calledsub create_dir{    my ($subdir)=@_;    print $subdir."\n";    mkdir ($subdir) unless -d $subdir;}my $count=3;my $i,@res;my $name='D:/home/dest';mkdir "d:/home";#windows不能直接建立二级目录for($i=1;$i<=$count;$i++){    my $tmp=$name.$i;    my $t = threads->new(\&create_dir,$tmp);    push @res,$t}foreach(@res){    $_->join();} 

热点排行