mirror of
https://gitlab.com/mangadex-pub/mangadex_at_home.git
synced 2024-01-19 02:48:37 +00:00
Fix shutdown
This commit is contained in:
parent
de86ad283e
commit
5b06ac2357
|
@ -198,7 +198,7 @@ class MangaDexClient(private val settingsFile: File, databaseFolder: Path, cache
|
|||
}
|
||||
|
||||
private fun validateSettings(settings: ClientSettings) {
|
||||
if (settings.maxCacheSizeInMebibytes < 20480) {
|
||||
if (settings.maxCacheSizeInMebibytes < 40960) {
|
||||
throw ClientSettingsException("Config Error: Invalid max cache size, must be >= 20480 MiB (20 GiB)")
|
||||
}
|
||||
|
||||
|
|
|
@ -64,6 +64,7 @@ import java.security.PrivateKey
|
|||
import java.security.cert.CertificateFactory
|
||||
import java.security.cert.X509Certificate
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import javax.net.ssl.SSLException
|
||||
|
||||
sealed class NettyTransport(threads: Int) {
|
||||
|
@ -76,12 +77,6 @@ sealed class NettyTransport(threads: Int) {
|
|||
}
|
||||
)
|
||||
|
||||
fun shutdownGracefully() {
|
||||
bossGroup.shutdownGracefully().sync()
|
||||
workerGroup.shutdownGracefully().sync()
|
||||
executor.shutdownGracefully().sync()
|
||||
}
|
||||
|
||||
private class NioTransport(threads: Int) : NettyTransport(threads) {
|
||||
override val bossGroup = NioEventLoopGroup(1)
|
||||
override val workerGroup = NioEventLoopGroup(8)
|
||||
|
@ -216,7 +211,11 @@ class Netty(
|
|||
|
||||
override fun stop() = apply {
|
||||
channel.close().sync()
|
||||
transport.shutdownGracefully()
|
||||
transport.run {
|
||||
bossGroup.shutdownGracefully(0, 500, TimeUnit.MILLISECONDS).sync()
|
||||
workerGroup.shutdownGracefully(0, 500, TimeUnit.MILLISECONDS).sync()
|
||||
executor.shutdownGracefully(0, 500, TimeUnit.MILLISECONDS).sync()
|
||||
}
|
||||
}
|
||||
|
||||
override fun port(): Int = (channel.localAddress() as InetSocketAddress).port
|
||||
|
|
Loading…
Reference in a new issue