[ 
https://issues.apache.org/jira/browse/LOGCXX-394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13899258#comment-13899258
 ] 

Thorsten Schöning commented on LOGCXX-394:
------------------------------------------

The better approach should be to use Level::equals for comparison.

> Levels are not thread safe
> --------------------------
>
>                 Key: LOGCXX-394
>                 URL: https://issues.apache.org/jira/browse/LOGCXX-394
>             Project: Log4cxx
>          Issue Type: Bug
>          Components: Appender
>         Environment: Windows 7, Visual Studio 2010 SP1
>            Reporter: Petro Protsyk
>            Assignee: Thorsten Schöning
>            Priority: Minor
>              Labels: thread-safety
>
> Level.cpp. All default level variables are function static. This is not 
> thread safe, especially in Visual C++ compiler.
> Here is code to reproduce the issue in VC++ 2010:
>     Concurrency::parallel_for (int(0), int(10), [&](int i) 
>     { 
>         if (::log4cxx::Level::getWarn() == NULL) 
>         { 
>             throw std::exception(); 
>         } 
>      }); 



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to