예제 #1
0
        /// <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);
        }
예제 #2
0
        /// <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);
        }