gpt4 book ai didi

kotlin - 通过 JSR-223 运行 kotlin 非常慢

转载 作者:行者123 更新时间:2023-12-04 15:30:19 25 4
gpt4 key购买 nike

我正在运行以下代码,在 OSX (Sierra) 和 Windows 10 上执行需要 3 到 6 秒。我从未见过使用 JSR-223 如此缓慢,特别是考虑到正在评估的内容的简单性。在 YourKit 中挖掘调用树似乎大部分时间都花在 KotlinJsr223JvmLocalScriptEngine.getReplEvaluator 上,但我看不到这一点。

这是使用 jdk1.8.0_71 和 kotlin 1.2.10。

有任何想法吗?

谢谢

import javax.script.ScriptEngineManager

fun main(args: Array<String>) {
System.setProperty("idea.io.use.fallback", "true") // need this on windows, not required on osx it seems!
val engine = ScriptEngineManager().getEngineByExtension("kts")!!

val startTime = System.currentTimeMillis()

engine.eval("val x = 5")

println(System.currentTimeMillis() - startTime)
}

我的构建脚本如下:
buildscript {
ext.kotlin_version = '1.2.10'

repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}

group 'xxx'
version '1.0-SNAPSHOT'

apply plugin: 'kotlin'

repositories {
mavenCentral()
}

dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-script-util:$kotlin_version"
}

compileKotlin {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}

最佳答案

我对比了 kotlin 和 groovy,两者都是预编译的:engine.compile(script)

通过 jsr223 执行 kotlin 脚本比 groovy 脚本慢一百倍。

关于kotlin - 通过 JSR-223 运行 kotlin 非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48777423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com