diff options
Diffstat (limited to 'ext/Thread/create.tx')
-rw-r--r-- | ext/Thread/create.tx | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ext/Thread/create.tx b/ext/Thread/create.tx new file mode 100644 index 0000000000..7cc8334eb4 --- /dev/null +++ b/ext/Thread/create.tx @@ -0,0 +1,38 @@ +BEGIN { + eval { require Config; import Config }; + if ($@) { + print "1..0 # Skip: no Config\n"; + exit(0); + } + if ($Config{extensions} !~ /\bThread\b/) { + print "1..0 # Skip: no use5005threads\n"; + exit(0); + } +} + +use Thread 'async'; +use Config; +use Tie::Hash; + +sub start_here { + my $i; + print "In start_here with args: @_\n"; + for ($i = 1; $i <= 5; $i++) { + print "start_here: $i\n"; + sleep 1; + } +} + +async { + tie my(%h), 'Tie::StdHash'; + %h = %Config; + print "running on $h{archname}\n"; +}; + +print "Starting new thread now\n"; +$t = new Thread \&start_here, qw(foo bar baz); +print "Started thread $t\n"; +for ($count = 1; $count <= 5; $count++) { + print "main: $count\n"; + sleep 1; +} |