複数のスレッド間で共有される単一のインスタンスを持つDog
クラスがあるかもしれません。すべてのロギングにSLF4Jを使用する予定です。
public class Dog {
private Logger logger = LoggerFactory.getLogger(Dog.class);
// ...etc.
}
私のlogger
インスタンススレッドは安全ですか?なぜ/なぜそうではないのですか?
確かに、誰もがLogger
がスレッドセーフになると想定しています。ただし、ファサードの背後にある実装クラスのコード/ javadocsを見て、絶対に確実にする必要があります。
特定の実装の場合:
(明らかに、これらはそれぞれのコードがスレッドセーフに設計されているというステートメントです。常にバグが存在する可能性があります。たとえば、currentlyいくつかのオープンスレッドセーフバグ Log4j 2トラッカー 、ただしこれらのバグがyourの例に直接影響するようには見えませんがコード。)