web-dev-qa-db-ja.com

特定のプラグインのメモリ使用量を制限できますか?

以下を使用して、WPサイト全体のメモリ使用量を制限(または拡張)することが可能であることを私は知っています。

define('WP_MEMORY_LIMIT', '64M')

Webサイトで使用されている1つのプラグインだけで同じことを実行できますか?

1
Tal Galili

いいえ、できたとしても、プラグインが使用可能なメモリを使い果たした場合、致命的なエラーが原因でページ生成全体が停止します。

あなたはそれほど多くのメモリを使用しないように、あるいは単にWordPress/PHPに割り当てられる総メモリをさらに増やすためにプラグイン自体を修正することをお勧めします。

3
Viper007Bond

一般的に話されています、いいえ、それは特定のプラグインだけのために可能ではありません。このプラグインはwordpress PHPプロセス全体で(通常は)実行されるため、残りのメモリ制限設定と共有されます。

ただし、プラグインが呼び出されるたびにメモリを制限しようとすることはできます。それはそれのどんなフックの前にもあり得(それは可能です)、それから包含の前に初めに(それは達成するのがはるかに難しいです)。

ところで、WP_MEMORY_LIMITの定義は上書きされるので、実際にメモリを制限したい場合は、その定数を何かに設定することは役に立ちません。

システムの内部構造を扱うことを恐れないのであれば、プロセス全体のメモリを適切に制限することができます。また、実験的なものである場合は、 runkit を試してみてください。プラグインコードをその中で実行する - どういうわけか。

1
hakre