Marc Knaup
10/15/2020, 12:16 AMDariusz Kuc
10/15/2020, 3:02 AMMarc Knaup
10/15/2020, 3:19 AMDariusz Kuc
10/15/2020, 3:29 AMMarc Knaup
10/15/2020, 3:30 AMhallvard
10/15/2020, 8:07 AMmarcinmoskala
10/15/2020, 11:00 AMlouiscad
10/15/2020, 11:09 AMMarc Knaup
10/15/2020, 1:05 PMOleg Yukhnevich
10/15/2020, 1:37 PMMarc Knaup
10/15/2020, 1:40 PMhallvard
10/15/2020, 1:40 PMMarc Knaup
10/15/2020, 1:41 PMif (logger.isTraceEnabled) { logger.trace(…) }
which I don’t need if I use Kotlin inline functions: log.trace { … }
.Oleg Yukhnevich
10/15/2020, 1:44 PMMarc Knaup
10/15/2020, 1:45 PMOleg Yukhnevich
10/15/2020, 1:48 PMMarc Knaup
10/15/2020, 1:49 PMval logger = Log.slf4j("foo").withContext(<http://Dispatchers.IO|Dispatchers.IO>)
You could throw any kind of Log in any coroutine context. Or not use coroutines at all.Oleg Yukhnevich
10/15/2020, 1:56 PMWith no external dependencies.use java.util.logging for jvm + some async handler that will use coroutines if needed Im just not sure, that coroutines are needed for logging, but it's just my opinion BTW, Im also now trying to create some flexible common logger 🙂
wakingrufus
10/15/2020, 6:20 PMOleg Yukhnevich
10/15/2020, 6:39 PMwakingrufus
10/15/2020, 6:45 PMOleg Yukhnevich
10/15/2020, 6:52 PMArkadii Ivanov
10/15/2020, 10:43 PMsuspend
functions. Therefore the library's API should not be based on coroutines. And as a user of such a library I don't care what is used under the hood. I'm ok using it if it has good performance.louiscad
10/15/2020, 10:54 PMMarc Knaup
10/15/2020, 11:03 PMsuspend
if you use coroutines because you can use either Channels or GlobalScope
.Arkadii Ivanov
10/16/2020, 6:13 AMnapperley
10/17/2020, 12:04 AM