From: Jarkko Hietaniemi Date: Thu, 9 May 2002 14:09:00 +0000 (+0000) Subject: FAQ sync. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=2c646907d8be3abcfdbcb890fa5c8ca825c7ce91;p=p5sagit%2Fp5-mst-13.2.git FAQ sync. p4raw-id: //depot/perl@16527 --- diff --git a/pod/perlfaq3.pod b/pod/perlfaq3.pod index abab557..0db19d7 100644 --- a/pod/perlfaq3.pod +++ b/pod/perlfaq3.pod @@ -1,6 +1,6 @@ =head1 NAME -perlfaq3 - Programming Tools ($Revision: 1.21 $, $Date: 2002/04/28 15:51:10 $) +perlfaq3 - Programming Tools ($Revision: 1.22 $, $Date: 2002/05/06 13:11:13 $) =head1 DESCRIPTION @@ -617,17 +617,14 @@ No, Perl's garbage collection system takes care of this. =head2 How can I free an array or hash so my program shrinks? -You can't. On most operating systems, memory allocated to a program -can never be returned to the system. That's why long-running programs -sometimes re-exec themselves. Some operating systems (notably, -FreeBSD and Linux) allegedly reclaim large chunks of memory that is no -longer used, but it doesn't appear to happen with Perl (yet). The Mac -appears to be the only platform that will reliably (albeit, slowly) -return memory to the OS. - -We've had reports that on Linux (Redhat 5.1) on Intel, C will return memory to the system, while on Solaris 2.6 it -won't. In general, try it yourself and see. +You usually can't. On most operating systems, memory +allocated to a program can never be returned to the system. +That's why long-running programs sometimes re-exec +themselves. Some operating systems (notably, systems that +use mmap(2) for allocating large chunks of memory) can +reclaim memory that is no longer used, but on such systems, +perl must be configured and compiled to use the OS's malloc, +not perl's. However, judicious use of my() on your variables will help make sure that they go out of scope so that Perl can free up that space for diff --git a/pod/perlfaq4.pod b/pod/perlfaq4.pod index bedc668..27908d5 100644 --- a/pod/perlfaq4.pod +++ b/pod/perlfaq4.pod @@ -1,6 +1,6 @@ =head1 NAME -perlfaq4 - Data Manipulation ($Revision: 1.20 $, $Date: 2002/04/07 18:46:13 $) +perlfaq4 - Data Manipulation ($Revision: 1.21 $, $Date: 2002/05/06 13:08:46 $) =head1 DESCRIPTION @@ -135,7 +135,7 @@ functions is that it works with numbers of ANY size, that it is optimized for speed on some operations, and for at least some programmers the notation might be familiar. -=item B +=item B Using perl's built in conversion of 0x notation: @@ -214,6 +214,11 @@ Using Bit::Vector =item B +Perl 5.6 lets you write binary numbers directly with +the 0b notation: + + $number = 0b10110110; + Using pack and ord $decimal = ord(pack('B8', '10110110'));