summaryrefslogtreecommitdiff
path: root/indra/llcommon/llqueuedthread.cpp
diff options
context:
space:
mode:
authorRichard Linden <none@none>2013-05-20 00:01:57 -0700
committerRichard Linden <none@none>2013-05-20 00:01:57 -0700
commitf850ae03b399a5cc7aa32f82b8ed996518a86a2a (patch)
tree234c52cd26a804b35973f273b80d03a356f3142b /indra/llcommon/llqueuedthread.cpp
parent116d37b4d5883e6020f24ee9c660e9e4511a1574 (diff)
SH-3931 WIP Interesting: Add graphs to visualize scene load metrics
fixed copy construction of Recorders, eliminated most zero-length frames fixed reset behavior of periodic recordings and extendable recordings to clear entire history removed busy-loop recording of stats from worker threads...stats reported only when work is done
Diffstat (limited to 'indra/llcommon/llqueuedthread.cpp')
-rw-r--r--indra/llcommon/llqueuedthread.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/indra/llcommon/llqueuedthread.cpp b/indra/llcommon/llqueuedthread.cpp
index 956642e97a..4339f203db 100644
--- a/indra/llcommon/llqueuedthread.cpp
+++ b/indra/llcommon/llqueuedthread.cpp
@@ -404,6 +404,7 @@ S32 LLQueuedThread::processNextRequest()
QueuedRequest *req;
// Get next request from pool
lockData();
+
while(1)
{
req = NULL;
@@ -468,10 +469,11 @@ S32 LLQueuedThread::processNextRequest()
ms_sleep(1); // sleep the thread a little
}
}
+
+ LLTrace::get_thread_recorder()->pushToMaster();
}
S32 pending = getPending();
-
return pending;
}
@@ -500,6 +502,7 @@ void LLQueuedThread::run()
if (isQuitting())
{
+ LLTrace::get_thread_recorder()->pushToMaster();
endThread();
break;
}
@@ -508,11 +511,9 @@ void LLQueuedThread::run()
threadedUpdate();
- int res = processNextRequest();
-
- LLTrace::get_thread_recorder()->pushToMaster();
+ int pending_work = processNextRequest();
- if (res == 0)
+ if (pending_work == 0)
{
mIdleThread = TRUE;
ms_sleep(1);