OpenSim
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Public Member Functions | Properties | List of all members
OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue > Class Template Reference

A double dictionary that is thread abort safe. More...

Public Member Functions

 DoubleDictionaryThreadAbortSafe ()
 
 DoubleDictionaryThreadAbortSafe (int capacity)
 
void Add (TKey1 key1, TKey2 key2, TValue value)
 
bool Remove (TKey1 key1, TKey2 key2)
 
bool Remove (TKey1 key1)
 
bool Remove (TKey2 key2)
 
void Clear ()
 
bool ContainsKey (TKey1 key)
 
bool ContainsKey (TKey2 key)
 
bool TryGetValue (TKey1 key, out TValue value)
 
bool TryGetValue (TKey2 key, out TValue value)
 
void ForEach (Action< TValue > action)
 
void ForEach (Action< KeyValuePair< TKey1, TValue >> action)
 
void ForEach (Action< KeyValuePair< TKey2, TValue >> action)
 
TValue FindValue (Predicate< TValue > predicate)
 
IList< TValue > FindAll (Predicate< TValue > predicate)
 
int RemoveAll (Predicate< TValue > predicate)
 

Properties

int Count [get]
 

Detailed Description

A double dictionary that is thread abort safe.

This adapts OpenMetaverse.DoubleDictionary to be thread-abort safe by acquiring ReaderWriterLockSlim within a finally section (which can't be interrupted by Thread.Abort()).

Definition at line 40 of file DoubleDictionaryThreadAbortSafe.cs.

Constructor & Destructor Documentation

OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.DoubleDictionaryThreadAbortSafe ( )
inline

Definition at line 46 of file DoubleDictionaryThreadAbortSafe.cs.

OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.DoubleDictionaryThreadAbortSafe ( int  capacity)
inline

Definition at line 52 of file DoubleDictionaryThreadAbortSafe.cs.

Member Function Documentation

void OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Add ( TKey1  key1,
TKey2  key2,
TValue  value 
)
inline

Definition at line 58 of file DoubleDictionaryThreadAbortSafe.cs.

void OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Clear ( )
inline

Definition at line 208 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.ContainsKey ( TKey1  key)
inline

Definition at line 239 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.ContainsKey ( TKey2  key)
inline

Definition at line 244 of file DoubleDictionaryThreadAbortSafe.cs.

IList<TValue> OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.FindAll ( Predicate< TValue >  predicate)
inline

Definition at line 414 of file DoubleDictionaryThreadAbortSafe.cs.

TValue OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.FindValue ( Predicate< TValue >  predicate)
inline

Definition at line 383 of file DoubleDictionaryThreadAbortSafe.cs.

void OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.ForEach ( Action< TValue >  action)
inline

Definition at line 305 of file DoubleDictionaryThreadAbortSafe.cs.

void OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.ForEach ( Action< KeyValuePair< TKey1, TValue >>  action)
inline

Definition at line 331 of file DoubleDictionaryThreadAbortSafe.cs.

void OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.ForEach ( Action< KeyValuePair< TKey2, TValue >>  action)
inline

Definition at line 357 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Remove ( TKey1  key1,
TKey2  key2 
)
inline

Definition at line 95 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Remove ( TKey1  key1)
inline

Definition at line 124 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Remove ( TKey2  key2)
inline

Definition at line 166 of file DoubleDictionaryThreadAbortSafe.cs.

int OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.RemoveAll ( Predicate< TValue >  predicate)
inline

Definition at line 446 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.TryGetValue ( TKey1  key,
out TValue  value 
)
inline

Definition at line 249 of file DoubleDictionaryThreadAbortSafe.cs.

bool OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.TryGetValue ( TKey2  key,
out TValue  value 
)
inline

Definition at line 277 of file DoubleDictionaryThreadAbortSafe.cs.

Property Documentation

int OpenSim.Framework.DoubleDictionaryThreadAbortSafe< TKey1, TKey2, TValue >.Count
get

Definition at line 235 of file DoubleDictionaryThreadAbortSafe.cs.


The documentation for this class was generated from the following file: