| 31 | } |
| 32 | |
| 33 | void TResourceConstrainedExecutor::Add(TFunctionWithResourceUsage&& functionWithResourceUsage) { |
| 34 | if (functionWithResourceUsage.first > ResourceQuota) { |
| 35 | TStringStream message; |
| 36 | message << "Resource " << ResourceName |
| 37 | << ": functionWithResourceUsage.ResourceUsage(" << functionWithResourceUsage.first |
| 38 | << ") > ResourceQuota(" << ResourceQuota << ')'; |
| 39 | if (LenientMode) { |
| 40 | CATBOOST_WARNING_LOG << message.Str() << Endl; |
| 41 | } else { |
| 42 | ythrow TCatBoostException() << message.Str(); |
| 43 | } |
| 44 | } |
| 45 | |
| 46 | Queue.insert(std::move(functionWithResourceUsage)); |
| 47 | } |
| 48 | |
| 49 | void TResourceConstrainedExecutor::ExecTasks() { |
| 50 | while (!Queue.empty()) { |
no test coverage detected