Limits クラス
特定のリソースの制限情報を返すメソッドが含まれます。
Limits メソッドは、メソッドのコール数やヒープサイズの残りの量など、特定のガバナの具体的な制限を返します。
Apex はマルチテナント環境で実行するため、Apex ランタイムエンジンは、回避 Apex が共有リソースを独占しないようさまざまな制限事項を強制します。
myDMLLimit = Limits.getDMLStatements();
getLimitDMLRows()
DML ステートメント、database.EmptyRecycleBin メソッド、および他のメソッドなど、DML 制限にカウントされるすべてのステートメントを使用して処理できるレコードの合計数を返します。
getDMLStatements()
コールされた DML ステートメント (insert、update、または database.EmptyRecycleBin メソッドなど) の数を返します。
getLimitDMLStatements()
コールできる DML ステートメントまたは database.EmptyRecycleBin メソッドの合計数を返します。
private static void save(DebugLog__c debugLog) {
try {
System.debug('>> ' + debugLog);
// ガバナ制限のチェックをする
if (Limits.getDmlRows() < Limits.getLimitDmlRows() &&
Limits.getDmlStatements() < Limits.getLimitDmlStatements()) {
} else {
System.debug('>> ガバナ制限をこえています!');
}
} catch (Exception ex) {
// ロガーからはエラーが出ないようにする
System.debug('>> Log書き込みに失敗しました。' + ex.getMessage());
}
}