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