CAEngine::DefaultEvaluationTimeLimit
ADE User Guide > ADE Server Class Reference > CAObject
描述
CAObject的这个属性指明该对象中发生的计算所使用的最大时间限制(毫秒)可以用来确保方法调用最终将返回,即使模型包含一个无线循环,后者比续期消耗更长的时间。
这主要影响CAObject::Evaluate、CAObject::Result和CAObject::ResultTable等方法。在某些情况下,当一个表格索引需要计算时,对CAObject::DefTable也有影响。在调用这些方法时,如果时限已到,CAEngine::ErrorCode将被设定为77("方法计算以超出最大时间限制")。注意计算也可能终止(如果中断事件最终被触发)并放回CAEngine::ErrorCode=78 ("计算终止")
(在ADE4.3中)当CAObject先建立时,其值从CAEngine::DefaultEvaluationTimeLimit中继承。改变CAEngine::DefaultEvaluationTimeLimit的值对已经存在的CAObject没有影响。
0值(通常默认值)表示没有时间限制。方法调用不会返回,一直等到计算完成或者终止(例如,由于计算错误)或者终止事件被触发。如果模型包含一个无线循环,它将永远不会返回。
数据类型
long int:长整型
存取
读 / 写
示例用法
CAObject obj = ade.GetObjectByName("Projected_profit") obj.MethodEvaluationTimeLimit = 50000; CATable result = obj.ResultTable; if (ade.ErrorCode == 77) { /* computation timed out */ }
错误代码
次ErrorCode(错误代码)通过读取或者写入这样的属性改变,但是,在调用其它方法时间限制被强制时,你可能遇到来自它们的此错误代码。
- 77 – "方法计算超出允许的时间限制"
另请参考
Comments
Enable comment auto-refresher