/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
pid
Fra : Michael Wojciechowsk~


Dato : 23-02-01 17:31

Hej

Nedenstående stump kode er noget jeg har fundet og som virker fint, men
jeg underer mig bare over om man ikke kan skrive noget mere
gennemskuligt end "$$" for at få process-id'en af en ens script ?

"
# Store the pid of shepherd in a pid file
open PID,">$pid_file" or die "Can't create $pid_file: $!\n";
print PID "$$";
# ^^^^
close PID;
"

/wojci at wojci dot dk


 
 
Peter Makholm (23-02-2001)
Kommentar
Fra : Peter Makholm


Dato : 23-02-01 17:59

Michael Wojciechowski <wojci@cs.auc.dk> writes:

> Nedenstående stump kode er noget jeg har fundet og som virker fint, men
> jeg underer mig bare over om man ikke kan skrive noget mere
> gennemskuligt end "$$" for at få process-id'en af en ens script ?

perldoc perlvar!

--
Peter

Michael Wojciechowsk~ (23-02-2001)
Kommentar
Fra : Michael Wojciechowsk~


Dato : 23-02-01 19:04

On 23 Feb 2001, Peter Makholm wrote:

> Michael Wojciechowski <wojci@cs.auc.dk> writes:
>
> > Nedenstående stump kode er noget jeg har fundet og som virker fint, men
> > jeg underer mig bare over om man ikke kan skrive noget mere
> > gennemskuligt end "$$" for at få process-id'en af en ens script ?
>
> perldoc perlvar!

ja...det staar det jo :) takker.

Det er første gang jeg har haft brug for det -< en undskyldning for at
ikke have læst manualen...

/wojci at wojci dot dk
>
> --
> Peter
>


Lars Balker Rasmusse~ (23-02-2001)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 23-02-01 17:59

Michael Wojciechowski <wojci@cs.auc.dk> writes:
> Nedenstående stump kode er noget jeg har fundet og som virker fint, men
> jeg underer mig bare over om man ikke kan skrive noget mere
> gennemskuligt end "$$" for at få process-id'en af en ens script ?

use English;

$PID eller $PROCESS_ID

Se perldoc perlvar
--
Lars Balker Rasmussen "Special is bad."

Thorbjørn Ravn Ander~ (25-02-2001)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 25-02-01 20:25

Lars Balker Rasmussen wrote:
>
> Michael Wojciechowski <wojci@cs.auc.dk> writes:
> > Nedenstående stump kode er noget jeg har fundet og som virker fint, men
> > jeg underer mig bare over om man ikke kan skrive noget mere
> > gennemskuligt end "$$" for at få process-id'en af en ens script ?
>
> use English;

_FY!_

>
> $PID eller $PROCESS_ID
>
> Se perldoc perlvar

Fra "perldoc -q slow"

Why does using $&, $`, or $' slow my program down?

Because once Perl sees that you need one of these variables anywhere
in
the program, it has to provide them on each and every pattern match.
The
same mechanism that handles these provides for the use of $1, $2,
etc.,
so you pay the same price for each regex that contains capturing
parentheses. But if you never use $&, etc., in your script, then
regexes
*without* capturing parentheses won't be penalized. So avoid $&, $',
and
$` if you can, but if you can't, once you've used them at all, use
them
at will because you've already paid the price. Remember that some
algorithms really appreciate them. As of the 5.005 release. the $&
variable is no longer "expensive" the way the other two are.

og fra English.pm

# Matching.

   *MATCH               = *&   ;
   *PREMATCH            = *`   ;
   *POSTMATCH            = *'   ;
   *LAST_PAREN_MATCH         = *+   ;
   *LAST_MATCH_START         = *-{ARRAY} ;
   *LAST_MATCH_END            = *+{ARRAY} ;


Dvs, at "use English" definerer ovenstående fy-variable, og derfor
sløver programmet ned.
Hvis det har ændret sig siden "i gamle dage" vil jeg da gerne vide det,
da jeg ikke lige er i stand til at lave faktiske Benchmarks lige nu.


--
Thorbjørn Ravn Andersen "...sound of...Tubular Bells!"
http://bigfoot.com/~thunderbear

Lars Balker Rasmusse~ (25-02-2001)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 25-02-01 20:33

Thorbjørn Ravn Andersen <thunderbear@bigfoot.com> writes:
> Lars Balker Rasmussen wrote:
> > Michael Wojciechowski <wojci@cs.auc.dk> writes:
> > > Nedenstående stump kode er noget jeg har fundet og som virker fint, men
> > > jeg underer mig bare over om man ikke kan skrive noget mere
> > > gennemskuligt end "$$" for at få process-id'en af en ens script ?
> >
> > use English;
>
> _FY!_

Selv. Jeg bruger det ikke, for jeg finder ikke $$ ugennemskueligt.
Det var det det drejede sig om.

Desuden tror jeg det er de færreste perl-programmer, hvor performance
faktisk betyder noget.
--
Lars Balker Rasmussen "Woo hoo!?"

Søg
Reklame
Statistik
Spørgsmål : 177547
Tips : 31968
Nyheder : 719565
Indlæg : 6408797
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste