Log threadcount together with memory
This commit is contained in:
@@ -67,6 +67,7 @@ U32 ll_thread_local local_thread_ID = 0;
|
||||
#endif
|
||||
|
||||
U32 LLThread::sIDIter = 0;
|
||||
LLAtomicS32 LLThread::sCount = 0;
|
||||
|
||||
LL_COMMON_API void assert_main_thread()
|
||||
{
|
||||
@@ -125,6 +126,8 @@ LLThread::LLThread(std::string const& name) :
|
||||
mThreadLocalData(NULL)
|
||||
{
|
||||
mID = ++sIDIter;
|
||||
sCount++;
|
||||
llassert(sCount <= 50);
|
||||
mRunCondition = new LLCondition;
|
||||
}
|
||||
|
||||
@@ -175,7 +178,7 @@ void LLThread::shutdown()
|
||||
}
|
||||
mAPRThreadp = NULL;
|
||||
}
|
||||
|
||||
sCount--;
|
||||
delete mRunCondition;
|
||||
mRunCondition = 0;
|
||||
}
|
||||
|
||||
@@ -73,6 +73,7 @@ class LL_COMMON_API LLThread
|
||||
{
|
||||
private:
|
||||
static U32 sIDIter;
|
||||
static LLAtomicS32 sCount;
|
||||
|
||||
public:
|
||||
typedef enum e_thread_status
|
||||
@@ -90,6 +91,7 @@ public:
|
||||
bool isStopped() const { return (STOPPED == mStatus); }
|
||||
|
||||
static U32 currentID(); // Return ID of current thread
|
||||
static S32 getCount() { return sCount; }
|
||||
static void yield(); // Static because it can be called by the main thread, which doesn't have an LLThread data structure.
|
||||
|
||||
public:
|
||||
@@ -129,7 +131,7 @@ protected:
|
||||
apr_thread_t *mAPRThreadp;
|
||||
volatile EThreadStatus mStatus;
|
||||
U32 mID;
|
||||
|
||||
|
||||
friend void LLThreadLocalData::create(LLThread* threadp);
|
||||
LLThreadLocalData* mThreadLocalData;
|
||||
|
||||
|
||||
@@ -8156,7 +8156,7 @@
|
||||
<key>Type</key>
|
||||
<string>F32</string>
|
||||
<key>Value</key>
|
||||
<real>600.0</real>
|
||||
<real>30.0</real>
|
||||
</map>
|
||||
<key>MemoryPrivatePoolEnabled</key>
|
||||
<map>
|
||||
|
||||
@@ -228,6 +228,7 @@ void display_stats()
|
||||
gMemoryAllocated = LLMemory::getCurrentRSS();
|
||||
U32 memory = (U32)(gMemoryAllocated / (1024*1024));
|
||||
llinfos << llformat("MEMORY: %d MB", memory) << llendl;
|
||||
llinfos << "THREADS: "<< LLThread::getCount() << llendl;
|
||||
LLMemory::logMemoryInfo(TRUE) ;
|
||||
gRecentMemoryTime.reset();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user