Ticket #1201 (closed: fixed)
Poco logging streams are not thread safe
| Reported by: | Martyn Gigg | Owned by: | Martyn Gigg | 
|---|---|---|---|
| Priority: | major | Milestone: | Iteration 23 | 
| Component: | Keywords: | ||
| Cc: | Blocked By: | ||
| Blocking: | Tester: | 
Description
The stream buffer within Poco keeps a string buffer of all content passed to it until it reaches an EOL character. Writing to this buffer isn't protected by a mutex and as a result logging with the streams results in a crash when a loop is parallelized.
Change History
Note: See
        TracTickets for help on using
        tickets.
    
(In [4285]) Added a thread-safe logging stream which is compatible with our logging in our threaded loops. It is still not a good idea to log too heavily in parallized loops but at least this way it is safe. Re #1201