aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Parallel.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* minor: remove a few mono compiler warningsJustin Clark-Casey (justincc)2009-11-031-3/+3
|
* * Switched all operations on the list of clients that could be either sync ↵John Hurliman2009-10-261-1/+2
| | | | | | | | or async to use Scene.ForEachClient() instead of referencing ClientManager directly * Added a new [Startup] config option called use_async_when_possible to signal how to run operations that could be either sync or async * Changed Scene.ForEachClient to respect use_async_when_possible * Fixing a potential deadlock in Parallel.ForEach by locking on a temporary object instead of the enumerator (which may be shared across multiple invocations on ForEach). Thank you diva
* * Changed the misc. methods calling ThreadPool.UnsafeQueueUserWorkItem() to ↵John Hurliman2009-10-211-3/+3
| | | | | | Util.FireAndForget() * Changed Util.FireAndForget() to use any of five different methods set with async_call_method in the [Startup] section of OpenSim.ini. Look at the example config for possible values
* * Removed OpenSim.Data.NHibernateJohn Hurliman2009-10-191-3/+3
| | | | * Replaced calls to ThreadPool.QueueUserWorkItem() with ThreadPool.UnsafeQueueUserWorkItem() since OpenSim does not use Code Access Security sandboxing
* * Rewrote the methods that build ObjectUpdate and ImprovedTerseObjectUpdate ↵John Hurliman2009-10-181-4/+4
| | | | | | | | | | packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away * Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters * Made Parallel.ProcessorCount public * Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes() * More cleanup of the ScenePresences vs. ClientManager nightmare * ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
* Calling .Close() on AutoResetEvent and ManualResetEvent (those classes ↵John Hurliman2009-10-091-0/+3
| | | | contain an unmanaged resource that will not automatically be disposed when they are GCed), and commenting out some ManualResetEvents that are not in use yet
* * Continued work on the new LLUDP implementation. Appears to be functioning, ↵John Hurliman2009-10-061-0/+207
although not everything is reimplemented yet * Replaced logic in ThreadTracker with a call to System.Diagnostics that does the same thing * Added Util.StringToBytes256() and Util.StringToBytes1024() to clamp output at byte[256] and byte[1024], respectively * Fixed formatting for a MySQLAssetData error logging line