Tag: nio

有没有关于在java nio selectionKey.attachment()的任何错误?

fun main(args: Array<String>) { val selector = Selector.open() val sc = SocketChannel.open() sc.configureBlocking(false) sc.connect(InetSocketAddress(1234)) val key = sc.register(selector, SelectionKey.OP_CONNECT) println("key=$key") key.attach(ClientAttachment()) writeThread(sc) while (selector.isOpen) { if (selector.select() == 0) continue val keys = selector.selectedKeys().iterator() while (keys.hasNext()) { val key = keys.next() println("key=$key") println("ac=${key.attachment()}") keys.remove() if (key.isConnectable) { val c = key.channel() as SocketChannel while (!c.finishConnect()) […]

我可以混合Ktor与暴露?

我正在写一个服务使用Ktor和暴露ORM显然不是异步。 我来自Python世界,在那里使用阻塞ORM与异步IO库是一个罪过,因为它可能会阻止线程中的所有用户。 Kotlin也适用同样的规则吗? 我是否创建了一个糟糕的建筑?