-
Notifications
You must be signed in to change notification settings - Fork 7
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
Performance Optimierung Map vs Array #273
Comments
Hmmm. Diese Änderung hat leider ein fettes Problem in den Adapter eingeschleust: [#278] Das Problem liegt darin, dass das alte Array aus zwei Richtungen abgefragt wurde:
Analyse:
Ergebnis:
Wie bekommen wir es jetzt wieder hin auch nach "LastErrorCode" etc suchen zu können, ohne die Map (oder Teile davon) doppeln zu müssen? |
@Grizzelbee ich habe noch eine lookup map hinzugefuegt. damit funktioniert wieder alles |
Habe ich gerade schon gesehen - mag die Lösung aber nicht, weil sie jeden einzelnen dyson-code und den zugehörigenb Obejektbaum-Namen doppelt - was bei künftigen Änderungen mit Sicherheit vergessen wird und zu Problemen führt. Kann man diese Liste nicht dynamisch aus den Keys der Map und dem zugehörigen *.Name" bilden? Da würde ich zugunsten der Objekt-Update-Performanz mitspielen. |
Man koennte das hier machen:
wie findest du das? |
Yapp - finde ich gut. |
@Grizzelbee habe noch tests hinzugefuegt. |
Die function
getDatapoint
in main.js kann optimiert werden, weil immer nach einem unique key gesucht wird.Wenn eine Map anstatt einem Array benutzt wird kann man konstante zugriffszeiten bekommen.
Ich habe das mal implementiert und einen benchmark laufen lassen:
best
sucht nachchannel
(erstes element im array)worst
sucht nachste1
(letztes element im array)Code (bench.mjs):
The text was updated successfully, but these errors were encountered: