/// <summary> /// Logs the specified sender. /// </summary> /// <param name="sender">The sender.</param> /// <param name="message">The message.</param> public static void Log( object sender, SeverityMessage message) { // Check the listeners outside of a lock. If we have anything, then // return as fast as we can. if (logged == null) { return; } // Get the listeners at the point of reading the log. EventHandler <SeverityMessageEventArgs> listeners; using (new ReadLock(threadLock)) { listeners = logged; } // If we don't have listeners, then just break out. if (listeners == null) { return; } // Create an event handler and invoke it. var args = new SeverityMessageEventArgs(message); listeners(sender, args); }
/// <summary> /// Logs the specified sender. /// </summary> /// <param name="sender">The sender.</param> /// <param name="message">The message.</param> public static void Log( object sender, SeverityMessage message) { // Check the listeners outside of a lock. If we have anything, then // return as fast as we can. if (logged == null) { return; } // Get the listeners at the point of reading the log. EventHandler<SeverityMessageEventArgs> listeners; using (new ReadLock(threadLock)) { listeners = logged; } // If we don't have listeners, then just break out. if (listeners == null) { return; } // Create an event handler and invoke it. var args = new SeverityMessageEventArgs(message); listeners(sender, args); }