Вопрос

I am developing my own simple logging system, which I'd like to design so it writes the to output stream asyncronously. For that purpose I create processing thread. How am I supposed to properly stop it, when user application finishes executing?

Unfortunatelly SLF4J facade doesn't provide any interface for me to delegate this responsibility to the user.

Это было полезно?

Решение

Make the thread daemon and it will finish togehter with the application. As for closing the OutputStream you don't need to worry about it. If it is a file or a socket it will be closed by OS anyway. Just make sure you flush after each write.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top