perf: rutetjek frem+tilbage går markør->markør og gemmes 5 min (var 30-39 ms pr. kald, genberegnet hver 10 m); bygningsliste 30 s — hak på 44-67 ms (v1.33.4.0)

This commit is contained in:
2026-09-26 22:13:50 +02:00
parent 4aa221820d
commit ac3db0d826
4 changed files with 49 additions and 2 deletions
+19
View File
@@ -137,5 +137,24 @@ do
netGetTime = nil
end
-- MR: rute markør->markør gemmes (uafhængig af hvor vognen er) — hak 26/9: 30-39 ms pr. rutetjek
do
local calls = 0
local realFromTo = adEnv.ADGraphManager.pathFromTo
adEnv.ADGraphManager.pathFromTo = function(self, from, to) calls = calls + 1; return realFromTo(self, from, to) end
local savedClock = netGetTime
local t = 1000
netGetTime = function() return t end
ADWaitPool.resetMarkerRoutes()
local far = {name = "far", rootNode = {x = 5000, z = 5000}}
check("MR første: rute", ADWaitPool.hasRouteBothWays(adEnv, v2, 10, 30), true)
local afterFirst = calls
t = t + 60000
check("MR anden fra en helt anden position: samme svar", ADWaitPool.hasRouteBothWays(adEnv, far, 10, 30), true)
check("MR anden gang ingen ny ruteberegning", calls, afterFirst)
adEnv.ADGraphManager.pathFromTo = realFromTo
netGetTime = savedClock
end
print(failures == 0 and "\nALLE TESTS OK" or ("\n" .. failures .. " FEJL"))
os.exit(failures == 0 and 0 or 1)