Perl多进程与多线程简单示例
2013-01-14 09:01
337 查看
多进程:
多线程:
#!/usr/bin/perl use strict; use warnings; print "Starting main program\n"; my @childs; for ( my $count = 1; $count <= 10; $count++) { my $pid = fork(); if ($pid) { # parent #print "pid is $pid, parent $$\n"; push(@childs, $pid); } elsif ($pid == 0) { # child sub1($count); exit 0; } else{ die "couldnt fork: $!\n"; } } foreach (@childs) { my $tmp = waitpid($_, 0); print "done with pid $tmp\n"; } print "End of main program\n"; sub sub1 { my $num = shift; print "started child process for $num\n"; sleep $num; print "done with child process for $num\n"; return $num; }
多线程:
#!/usr/bin/perl use strict; use warnings; use threads; use threads::shared; print "Starting main program\n"; my @threads; for ( my $count = 1; $count <= 10; $count++) { my $t = threads->new(\&sub1, $count, "hello,word"); push(@threads,$t); } foreach (@threads) { my $num = $_->join; print "done with $num\n"; } print "End of main program\n"; sub sub1 { my ($num, $str) = @_; print "started thread $num, $str\n"; sleep $num; print "done with thread $num\n"; return $num . " haha..."; }
相关文章推荐
- iOS - GCD(多线程)简单示例:
- 多线程简单示例
- 简单的网络文件传输示例,多线程传一个目录!(pickle很实用)
- Java多线程简单例子,银行存取示例。
- C - pthread多线程最简单示例
- 多线程简单示例。。。
- delphi多线程程序示例(与.net一样简单)
- C#多线程开发,简单示例
- C++11 多线程gcc编译简单示例
- 关于Task类处理多线程简单示例
- Python(2.7.x)多线程的简单示例
- 用perl对文件中的字符串做处理的一个简单的示例
- C# 谁能以最简单的形式做个多线程的示例
- delphi多线程程序示例(与.net一样简单)
- 多线程的简单示例
- 多线程的简单示例
- 简单的多线程操作示例
- 在c#多线程使用IOCP(完成端口)的简单示例
- 多线程简单示例
- 关于Task类处理多线程简单示例