[ https://issues.apache.org/jira/browse/LOG4NET-447?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gregory Babski updated LOG4NET-447: ----------------------------------- Attachment: MemoryAppenderTest.cs This is an nUnit test case to reproduce the issue. > MemoryAppender class is not thread safe > --------------------------------------- > > Key: LOG4NET-447 > URL: https://issues.apache.org/jira/browse/LOG4NET-447 > Project: Log4net > Issue Type: Bug > Components: Appenders > Affects Versions: 1.2.13 > Environment: .NET Framework 4.0 (Full Profile) > Reporter: Gregory Babski > Priority: Minor > Attachments: MemoryAppenderTest.cs > > > The memory appender cannot be used safely in an application that uses more > than one thread to interact with logging. > When using this code to retrieve and then clear events logged in the memory > appender: > var events = memoryAppender.GetEvents(); > memoryAppender.Clear(); > The executing thread may be preempted between these two calls and additional > logging events logged. These events are then cleared when the thread resumes > execution - and are never seen/processed. > I expect to be be able to retrieve and clear the list of current events in > one call that guarantees that no events are ever lost. -- This message was sent by Atlassian JIRA (v6.3.4#6332)