www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - is module ( std.experimental.logger) thread-safe.

reply Dsby <dushibaiyu yahoo.com> writes:
I want to use the filelogger to my application.
is the  sharedLog()  global and  thread-safe.
Mar 06 2016
parent reply ZombineDev <petar.p.kirov gmail.com> writes:
On Sunday, 6 March 2016 at 09:54:49 UTC, Dsby wrote:
 I want to use the filelogger to my application.
 is the  sharedLog()  global and  thread-safe.
Yes, `FileLogger` internally uses `lockingTextWriter`, so it should be safe to call from multiple threads. Furthermore, the `sharedLog` property uses atomic load and store instructions, so it should be OK to concurrently change the shared logger.
Mar 10 2016
parent Dsby <dushibaiyu yahoo.com> writes:
On Thursday, 10 March 2016 at 23:56:14 UTC, ZombineDev wrote:
 On Sunday, 6 March 2016 at 09:54:49 UTC, Dsby wrote:
 I want to use the filelogger to my application.
 is the  sharedLog()  global and  thread-safe.
Yes, `FileLogger` internally uses `lockingTextWriter`, so it should be safe to call from multiple threads. Furthermore, the `sharedLog` property uses atomic load and store instructions, so it should be OK to concurrently change the shared logger.
Thanks. I was test and used in my mutil-threads application. It works fine.
Mar 10 2016