null
nil
-
[RBX1]
8.9666671343147755
0
0
0
1
0
0
0
1
0
0
0
1
Workspace
[null]
-
[null]
0
0
2693.40869
2693.40869
1
0
-0
-0
0.707106769
0.707106769
0
-0.707106769
0.707106769
70
0
2679.2666
2679.2666
1
0
0
0
1
0
0
0
1
Camera
-
true
true
-0.5
0.5
0
0
-0.5
0.5
4
0
194
-2
126
-2
1
0
0
0
1
0
0
0
1
true
0.5
0.300000012
-0.5
0.5
0
0
-0.5
0.5
0
0
true
256
Terrain
0
-0.5
0.5
0
0
0
0
0
-0.5
0.5
3
0
0
0
0
0
2044
252
2044
-
StarterPack
-
StarterGui
true
-
0
10
1
Soundscape
1
-
CollectionService
-
PhysicsService
-
BadgeService
-
Geometry
-
RenderHooksService
-
SocialService
-
1000
Debris
-
Instance
-
Instance
-
CookiesService
-
Teleport Service
-
true
Players
-
Selection
-
4286611584
1
4278190080
4278190080
4290822336
100000
0
41.7332993
Lighting
4289967032
14:00:00
-
ChangeHistoryService
-
true
A tricky timing test. Sensitive to CPU power
true
true
true
TestService
60
-
false
Script
-- test scheduling when too many scripts are running
-- A tricky timing test. Sensitive to CPU power
was = settings().Lua.WaitingThreadsBudget
settings().Lua.WaitingThreadsBudget = 0.1
function addWork(n)
for i = 1, n do
delay(0, function()
while true do
local t = tick() + 0.00025
while tick() < t do
end
wait()
end
end)
end
end
maxWait = 0
t = tick()
while tick() - t < 30 do
local w, time = wait(0.5)
print(w, time)
RBX_CHECK_GE(w, 0.5)
if w > maxWait then
maxWait = w
end
if w < 2 then
addWork(20)
end
if tick() - t > 5 then
RBX_CHECK_GT(stats().Lua.ThreadsThrottled:GetValue(),0.1)
if maxWait > 1 then
break
end
end
end
-- confirm that at least one wait was deferred
RBX_CHECK_GT(maxWait, 1)
settings().Lua.WaitingThreadsBudget = was