Class IngestionBudget
A ceiling a run suspends against (spec 10.2). Every member is null by default, so a budget that sets nothing is Unlimited.
public sealed record IngestionBudget : IEquatable<IngestionBudget>
- Inheritance
-
IngestionBudget
- Implements
- Inherited Members
Properties
- Background
5 minutes of wall time, and nothing else. Fits inside a WorkManager Worker's 10-minute cap.
- MaxChunks
Chunks added.
- MaxDocuments
Documents processed, skips included.
- MaxDuration
Wall time. Checked before each document and before each write window.
- MaxTokens
Tokens embedded, metered against exactly the number
IngestionRunResult.TokensEmbeddedreports, so a budget and a report can never disagree about what a token is.
- Quick
20 seconds of wall time, and nothing else. Fits inside an iOS
BGAppRefreshTaskslot. MaxDocuments, MaxChunks and MaxTokens stay null deliberately: a Quick that also capped documents would suspend on a count that has nothing to do with the twenty-second slot it exists to fit. Compose one instead —IngestionBudget.Quick with { MaxDocuments = 50 }.
- Unlimited
No ceiling of any kind. The default when
IngestionRunOptions.Budgetis null.