-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: performance budgeting #247
Conversation
IConcurrentBudgetProvider -> IReleasablePerformanceBudget
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most clients using only TrySpend
method, so they can rely on IPerformanceBudget
interface instead of IReleasablePerformanceBudget
. I commented one case, but please check it in all other clients.
Same probably true for IReleasablePerformanceBudget
, where client only uses TryRelease
method, but this one is up to you if you want to refactor it further
...er/Assets/Scripts/ECS/Unity/PrimitiveRenderer/Systems/InstantiatePrimitiveRenderingSystem.cs
Outdated
Show resolved
Hide resolved
# Conflicts: # Explorer/Assets/DCL/PluginSystem/World/TextShapePlugin.cs
Windows build successfull! You can find a link to the downloadable artifact below.
|
* IReadOnlyDictionary for memoryThreshold * Introduced PerformanceBudget IConcurrentBudgetProvider -> IReleasablePerformanceBudget * replace usage to IPerformanceBudget
In the previous contract there was many implementations that violates LSP with empty method that ignores call. To get rid off it here is introduced:
PerformanceBudget that allows only spend a budget. Also according on the concern that object solves it was renamed from Budget Provider to Performance Budget
IConcurrentBudgetProvider -> IReleasablePerformanceBudget renamed as well