The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

APR::BucketAlloc - Perl API for Bucket Allocation

Synopsis

use APR::BucketAlloc ();
$ba = APR::BucketAlloc->new($pool);
$ba->destroy;

Description

APR::BucketAlloc is used for bucket allocation.

new

Create an APR::BucketAlloc object:

$ba = APR::BucketAlloc->new($pool);
class: APR::BucketAlloc
arg1: $pool ( APR::Pool object )

The pool used to create this object.

ret: $ba ( APR::BucketAlloc object )

The new object.

since: 2.0.00

This bucket allocation list (freelist) is used to create new buckets (via APR::Bucket->new) and bucket brigades (via APR::Brigade->new).

You only need to use this method if you aren't running under httpd. If you are running under mod_perl, you already have a bucket allocation available via $c->bucket_alloc and $bb->bucket_alloc.

Example:

use APR::BucketAlloc ();
use APR::Pool ();
my $ba = APR::BucketAlloc->(APR::Pool->pool);
my $eos_b = APR::Bucket::eos_create($ba);

destroy

Destroy an APR::BucketAlloc object:

$ba->destroy;
arg1: $ba ( APR::BucketAlloc object )

The freelist to destroy.

ret: no return value
since: 2.0.00

Once destroyed this object may not be used again.

You need to destroy $ba only if you have created it via APR::BucketAlloc->new. If you try to destroy an allocation not created by this method, you will get a segmentation fault.

Moreover normally it is not necessary to destroy allocators, since the pool which created them will destroy them during that pool's cleanup phase.

See Also

mod_perl 2.0 documentation.

Copyright

mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.

Authors

The mod_perl development team and numerous contributors.