[译]Kotlin/Native v0.2 发布啦
Posted Kotlin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[译]Kotlin/Native v0.2 发布啦相关的知识,希望对你有一定的参考价值。
本文翻译自官方博客:https://blog.jetbrains.com/kotlin/2017/05/kotlinnative-v0-2-is-out/
我们很高兴地宣布Kotlin / Native v0.2 发布啦,这是 Kotlin / Native 技术预览版的一次功能更新和 Bug 修复。这次更新增加了对协程和跨模块内联函数的支持,以及整体上的问题修复和优化。 这次更新包括了一个演示如何使用 的示例, 一个 ,以及一个由Julius Kunze贡献的 客户端。
下面的代码演示了如何使用协程处理并发 Socket IO。各个用户的请求将得到并发处理。
var connectionId = 0
acceptClientsAndRun(listenFd) {
memScoped {
val bufferLength = 100L
val buffer = allocArray<ByteVar>(bufferLength)
val connectionIdString = "#${++connectionId}: ".cstr
val connectionIdBytes = connectionIdString.getPointer(this)
try {
while (true) {
val length = read(buffer, bufferLength)
if (length == 0L) break
write(connectionIdBytes, connectionIdString.size.toLong())
write(buffer, length)
}
} catch (e: IOException) {
println("I/O error occurred: ${e.message}")
}
}
}
下面的这段代码则演示了如何创建一个带有事件监听的GTK按钮:
val button = gtk_button_new_with_label("Click me!")!!
g_signal_connect(button, "clicked",
staticCFunction { _: CPointer<GtkWidget>?, _: gpointer? -> println("Hi from Kotlin") }
)
简单地说,Kotlin Native v0.2 能够支持我们编写一些功能完善而精巧的程序了。
另外,Kotlin Native 编译和运行时性能均有明显改善,编译生成的可执行程序体积也进一步得到了缩减。
完整更新内容请参考
点击后面的链接即可下载 和 版本的编译器。
以上是关于[译]Kotlin/Native v0.2 发布啦的主要内容,如果未能解决你的问题,请参考以下文章
kotlin MPP 与 Kotlin Native 有啥不同?
在 Cocoapod 中导入 Kotlin/Native 框架
来了!支持 iOS 开发的 Kotlin/Native v0.4 发布