我正在使用Ktor和Exposed ORM编写服务,这显然不是异步的。我来自Python世界,回到那里使用带有异步IO库的阻塞ORM是一种罪过,因为它可能会阻塞线程中的所有用户。在Kotlin中是否适用相同的规则?我在创建不良的体系结构吗? 最佳答案 Exposed使用线程本地存储来使事务实例易于实现,并避免将其与每个函数调用一起传递。由于transaction DSL函数正在同步执行,并且不会释放线程以供ktor重用于其他调用,因此将它们一起使用不会有任何问题。