long-running task warning now warns based on average frame duration
This commit is contained in:
parent
daa62a5e88
commit
d0ef5b51ff
|
|
@ -354,7 +354,8 @@ class TaskManager:
|
|||
|
||||
OsdPrefix = 'task.'
|
||||
|
||||
DefTaskDurationWarningThreshold = 3.
|
||||
# multiple of average frame duration
|
||||
DefTaskDurationWarningThreshold = 4.
|
||||
|
||||
def __init__(self):
|
||||
self.running = 0
|
||||
|
|
@ -751,10 +752,11 @@ class TaskManager:
|
|||
task.avgDt = 0
|
||||
|
||||
# warn if the task took too long
|
||||
if self.warnTaskDuration:
|
||||
if dt >= self.taskDurationWarningThreshold:
|
||||
assert TaskManager.notify.warning('task %s ran for %.2f seconds' % (
|
||||
task.name, dt))
|
||||
if self.warnTaskDuration and self.globalClock:
|
||||
avgFrameDur = (1. / self.globalClock.getAverageFrameRate())
|
||||
if dt >= (self.taskDurationWarningThreshold * avgFrameDur):
|
||||
assert TaskManager.notify.warning('frame %s: task %s ran for %.2f seconds, avg frame duration=%.2f seconds' % (
|
||||
globalClock.getFrameCount(), task.name, dt, avgFrameDur))
|
||||
|
||||
return ret
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue