aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Watchdog.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add experimental "OpenSim object memory churn" statistics to output of ↵Justin Clark-Casey (justincc)2012-07-251-0/+3
| | | | | | | | region console "show stats" command This aims to capture the amount of memory that OpenSim turns over whilst operating a region. This memory is not lost - apart from leaks it is reclaimed by the garbage collector. However, the more memory that gets turned over the more work the GC has to do to reclaim it.
* Log warning if time between invocations of the watchdog thread is twice the ↵Justin Clark-Casey (justincc)2012-07-051-2/+22
| | | | | | timer setting. This is to help detect situations where thread timeout warnings are being generated because of general machine issues rather than deadlock, network or other problems.
* refactor: rename Watchdog.WATCHDOG_TIMEOUT_MS to DEFAULT_WATCHDOG_TIMEOUT_MS ↵Justin Clark-Casey (justincc)2012-07-041-3/+3
| | | | to reflect what it actually is
* Allow the thread watchdog to accept an alarm method that is invoked if the ↵Justin Clark-Casey (justincc)2012-06-071-17/+23
| | | | | | | timeout is breached. This alarm can then invoke this to log extra information. This is used in LLUDPServer to show which client was being processed when incoming and outgoing udp watchdog alarms are triggered.
* Take watchdog alarm calling back outside the m_threads lock.Justin Clark-Casey (justincc)2012-02-241-3/+16
| | | | This is how it was originally. This stops a very long running alarm callback from causing a problem.
* Rename Watchdog.GetThreads() to GetThreadsInfo() to reflect what it actually ↵Justin Clark-Casey (justincc)2012-02-241-1/+1
| | | | returns and for consistency.
* Stop spurious scene loop startup timeout alarms for scenes with many prims.Justin Clark-Casey (justincc)2012-02-241-17/+40
| | | | | | | | On the first frame, all startup scene objects are added to the physics scene. This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame. This commit also slightly changes the behaviour of timeout reporting. Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check. Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
* fix build break on UserManagementModule.Justin Clark-Casey (justincc)2011-11-151-4/+7
| | | | This also adds time since started to "show threads". Unfortunately these two changes got mixed in.
* Add number of milliseconds since last update to "show threads"Justin Clark-Casey (justincc)2011-11-151-1/+11
|
* doh - correct build breakJustin Clark-Casey (justincc)2011-11-121-6/+7
|
* Add threads to the watchdog thread list before we start them.Justin Clark-Casey (justincc)2011-11-121-5/+5
| | | | Hopefully this wil make "WATCHDOG: Asked to update thread ## which is not being monitored" messages." go away.
* Restart the event queue worker threads that I accidentally disabled earlier ↵Justin Clark-Casey (justincc)2011-10-251-2/+2
| | | | | | today in 8a0a78c. Also adds these to the watchdogs with very large timeouts (should really be infinite)
* In Watchdog, add ability to specific timeout for a thread.Justin Clark-Casey (justincc)2011-10-251-16/+56
| | | | This also changes the point of registration to the StartThread() call rather than the first Update()
* Add m_threads dictionary locking to Watchdog.GetThreads()Justin Clark-Casey (justincc)2011-10-251-1/+2
|
* Add "threads abort <thread-id>" simulator console command that allows us to ↵Justin Clark-Casey (justincc)2011-10-251-2/+23
| | | | | | abort a watchdog managed thread. This is for diagnostic purposes.
* Fix "show threads" to show threads now being managed by ↵Justin Clark-Casey (justincc)2010-09-141-2/+12
| | | | OpenSim.Framework.Watchdog
* * Changed the watchdog timer to improve the speed of UpdateThread(), only ↵John Hurliman2009-10-261-30/+30
| | | | | | track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later * Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
* Implemented a Watchdog class. Do not manually create Thread objects anymore, ↵John Hurliman2009-10-221-0/+183
use Watchdog.StartThread(). While your thread is running call Watchdog.UpdateThread(). When it is shutting down call Watchdog.RemoveThread(). Most of the threads in OpenSim have been updated