Imagick::setResourceLimit

(PECL imagick 2, PECL imagick 3)

Imagick::setResourceLimitSets the limit for a particular resource

Description

public static Imagick::setResourceLimit(int $type, int $limit): bool

This method is used to modify the resource limits of the underlying ImageMagick library.

Parameters

type

Refer to the list of resourcetype constants.

limit

One of the resourcetype constants. The unit depends on the type of the resource being limited.

Return Values

Returns true on success.

See Also

add a note

User Contributed Notes 5 notes

up
5
rodneyrehm
12 years ago
IMagick::RESOURCETYPE_THREADS is missing, yet you're still able to limit the number of thready ImageMagick should use:

<?php
// IMagick::setResourceLimit(IMagick::RESOURCETYPE_THREADS, 2);
IMagick::setResourceLimit(6, 2);
up
3
Anonymous user
10 years ago
Note that the limits are given in bytes instead of megabytes. You can verify with:

<?php echo Imagick::getResourceLimit(Imagick::RESOURCETYPE_MEMORY); ?>
up
3
Arkadiy Kulev
12 years ago
This list should help setting the limits:

imagick::RESOURCETYPE_AREA (integer) //equivalent of MAGICK_AREA_LIMIT
imagick::RESOURCETYPE_DISK (integer) //equivalent of MAGICK_DISK_LIMIT
imagick::RESOURCETYPE_FILE (integer) //equivalent of MAGICK_FILE_LIMIT
imagick::RESOURCETYPE_MAP (integer) //equivalent of MAGICK_MAP_LIMIT
imagick::RESOURCETYPE_MEMORY (integer) //equivalent of MAGICK_MEMORY_LIMIT
up
1
raphael dot droz at gmail dot com
3 years ago
Here are the RESOURCETYPE actually supported by today:
https://github.com/Imagick/imagick/blob/master/imagick_helpers.c
https://github.com/Imagick/imagick/blob/master/ChangeLog

Added in 3.3:
* Imagick::RESOURCETYPE_TIME
* Imagick::RESOURCETYPE_THROTTLE

Added in 3.2:
* Imagick::RESOURCETYPE_THREAD
up
0
anonymous
9 months ago
Note that Imagick::setResourceLimit may return success without actually changing the limits (verify with Imagick::getResourceLimit). This is at least true for Imagick::RESOURCETYPE_WIDTH and Imagick::RESOURCETYPE_HEIGHT, where values exceeding the limits defined in policy.xml are silently ignored.
To Top