Re: Fw: PHP URL issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




----- Original Message ----- From: "Robert Cummings" <robert@xxxxxxxxxxxxx>
To: "Satyam" <Satyam@xxxxxxxxxxxxx>
Cc: <php-general@xxxxxxxxxxxxx>
Sent: Wednesday, March 14, 2007 4:49 PM
Subject: Re: Fw:  PHP URL issues


On Wed, 2007-03-14 at 16:31 +0100, Satyam wrote:
One more example of a questionable benchmark, not wrong but I wonder (as I
was doing in my previous) whether it is really representative.

There are two main ways to handle strings, one is to malloc exactly the
required memory for each string and keep moving characters around from one chunk of memory to another. If you append a single character to a string, you would measure both, add their lengths plus whatever overhead your data representation requires, malloc that much memory, move the characters from
each source and then free the memory occupied by the first.

The other way to do it is to malloc memory in more or less fixed sizes and
include in the header of your variable a length field.

You forgot realloc().


Yes I did, but it doesn't matter that much. When asigning by blocks the best strategy is to keep all blocks the same size, or of a few assorted sizes, and link them in lists because blocks of different sizes end up fragmenting the memory too much and giving the garbage collector lots of trouble, if all blocks are of the same size, they are immediately reusable. Basically, if you are dealing with the memory yourself, assigning it, freeing it, collecting garbage afterwards and defragmenting, you won't resort that much to individual calls to the memory library functions, you just grab a big chunk and manage it on your own.

Satyam

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux