我们能在catch block salesforce中捕获apex cpu时间限制异常吗?
使用apex:Message,我们只能显示apex cpu时间限制异常的自定义消息。不,抱歉。您不能像捕获由我们能在catch block salesforce中捕获apex cpu时间限制异常吗?,salesforce,Salesforce,使用apex:Message,我们只能显示apex cpu时间限制异常的自定义消息。不,抱歉。您不能像捕获由System.assert()引起的异常一样捕获它们 由于Apex在多租户环境中运行,因此Apex运行时 引擎严格执行限制,以确保失控的Apex代码或 进程不会独占共享资源。如果某个Apex代码超过 一个限制,关联的调控器发出一个运行时异常 无法处理 不,对不起。您不能像捕获由System.assert()引起的异常一样捕获它们 由于Apex在多租户环境中运行,因此Apex运行时 引擎
System.assert()引起的异常一样捕获它们
由于Apex在多租户环境中运行,因此Apex运行时
引擎严格执行限制,以确保失控的Apex代码或
进程不会独占共享资源。如果某个Apex代码超过
一个限制,关联的调控器发出一个运行时异常
无法处理
不,对不起。您不能像捕获由System.assert()引起的异常一样捕获它们
由于Apex在多租户环境中运行,因此Apex运行时
引擎严格执行限制,以确保失控的Apex代码或
进程不会独占共享资源。如果某个Apex代码超过
一个限制,关联的调控器发出一个运行时异常
无法处理
您无法捕获apex CPU时间限制异常,但您可以在代码中始终检查限制,请参阅文档。在您的情况下,您可以检查Limits.getCpuTime()
,您可以在每几次迭代后或任何适当的时候调用它,如果您发现时间接近限制,您只需停止执行并在ApexPages.addMessage(new ApexPages.message)中传递您自己的自定义错误消息(ApexPages.Severity.ERROR,'ERROR:Your Custom ERROR Message')
您无法捕获apex CPU时间限制异常,但在代码中您始终可以检查限制,请参阅文档。在您的情况下,您可以检查限制.getCpuTime()
您可以在几次迭代后或任何适当的时候调用它,如果您发现时间接近限制,您可以简单地停止执行并在ApexPages.addMessage(new ApexPages.message(ApexPages.Severity.error,'error:your custom error message')中传递您自己的自定义错误消息
谢谢!!..实际上我想向用户显示Apex cpu时间限制异常上的错误消息。那么有没有其他方法可以做到这一点?不是在发生这种情况的上下文中,SF将在白色背景上显示自己丑陋的黑色文本。致命错误。但是如果您有其他上下文(可能不是VF页面,而是批处理作业。或入站电子邮件处理程序)-您可以尝试查询AsyncApexJob表。即使未启用调试日志记录,批处理和@future失败也会在该表中结束。InboundEmailHandler异常可以转发到专用邮箱。谢谢!!…实际上,我想向用户显示有关Apex cpu时间限制异常的错误消息。是否有其他方法可以执行此操作?不在cont中ext在发生这种情况时,SF将在白色背景上显示自己丑陋的黑色文本。这是一个致命错误。但如果您有其他上下文(可能不是VF页面,而是批处理作业。或入站电子邮件处理程序)-您可以尝试查询AsyncApexJob表。即使未启用调试日志记录,批处理和@future失败也会在该表中结束。InboundEmailHandler异常可以转发到专用邮箱。