Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^4: DESTROY on CTRL+C

by McA (Priest)
on Aug 29, 2013 at 13:51 UTC ( #1051441=note: print w/ replies, xml ) Need Help??


in reply to Re^3: DESTROY on CTRL+C
in thread DESTROY on CTRL+C

I'm not sure what you mean. As soon as the SIG{INT} handler is installed and I press CTRL-C while your program sleeps I can see the output of the sig handler ('Delete') and the output of the DESTROY method ('In DESTROY()').

To your second question:

#!/usr/bin/env perl use strict; use warnings; use 5.010; $SIG{INT} = sub { say "Caught a signal"; exit 1; }; say "Program started"; say "Starting to sleep"; sleep 3; say "I've been sleeping long enough"; END { say "I'm in the END block"; }

This code should give you confidence. In my case (Linux) the END block is executed.

I'm not sure whether you mix up the creation of a temp directory and temp file. You can create a temp file in your pwd and unlink it with:

my ($fh, $filename) = tempfile($template, DIR => '.'); unlink $filename;

As long as $fh is open you will have a file to write to and read from.

Have a look at:

#!/usr/bin/env perl use strict; use warnings; use 5.010; use Cwd (); use Fcntl (); use File::Temp qw(tempfile); my $pwd = Cwd::getcwd; say "pwd: $pwd"; my $template = 'somthing.XXXXXXX'; my $dir = '.'; my ($fh, $filename) = tempfile($template, DIR => $dir); say "filename: $filename"; system("ls -l '$filename'"); unlink $filename; system("ls -l '$filename'"); say "Now store 'Put some text in' in the file"; print $fh "Put some text in\n"; say "Written to file, try to read"; seek $fh, Fcntl::SEEK_SET, 0; while(my $line = <$fh>) { print "Found in file: $line"; } close $fh; say "End of prog";

McA


Comment on Re^4: DESTROY on CTRL+C
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1051441]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (13)
As of 2015-07-29 12:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (263 votes), past polls