Vixen
caa30e12
csharp
public sealed class PageBudgetException

A pinned working set larger than the pool that has to hold it.

Read the guide page for this →

Remarks

Its own type rather than an InvalidOperationException, on CompositorBindingException's reasoning: the caller can do something about this one, and what it can do is a number in a constructor.

Thrown from Pin and never from Service. A pin is a load-time act — a mesh's root page, as it registers — so this lands on whoever loaded the content, with a stack that names it, before any frame has run. The same condition discovered a frame at a time would be an exception out of the render loop, which stops the application for something that was decided when the pool was sized.

Fields and properties (3)

  • public PageKey Key

    The page whose pin did not fit.

  • public int Pinned

    How many pages would have been pinned.

  • public int Capacity

    How many the budget holds.

Methods (4)

  • public PageBudgetException(PageKey key, int pinned, int capacity)

    Creates the exception.

  • public PageBudgetException()
  • public PageBudgetException(string message)
  • public PageBudgetException(string message, Exception innerException)

Used by (3)

  • PageResidencyVixen.Rendering
  • PageResidencyTestsVixen.Rendering.Tests
  • VirtualGeometryContentTestsVixen.Rendering.Tests