Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 我在JMC/JFR中看到的“$adapted$”方法是什么?_Scala_Jvm_Jit_Jmc_Jfr - Fatal编程技术网

Scala 我在JMC/JFR中看到的“$adapted$”方法是什么?

Scala 我在JMC/JFR中看到的“$adapted$”方法是什么?,scala,jvm,jit,jmc,jfr,Scala,Jvm,Jit,Jmc,Jfr,当使用Java Flight Recorder/Mission Control对一些scala代码进行基准测试时,我可以看到许多方法的名称中有一个$adapted$。我可以想到一些可能性,看看签名 这些函数是否与java-8函数lambdas相同?i、 这不会生成堆分配吗 它们是泛型的专门化(在scala中,还是java中的模板) 或者它们是其他类型的优化 我在哪里可以读到更多关于这方面的内容呢?我想这是一种固定装置。Scala编译器通常滥用$in类名,一些java代码可能会失败,当您创建静

当使用Java Flight Recorder/Mission Control对一些scala代码进行基准测试时,我可以看到许多方法的名称中有一个
$adapted$
。我可以想到一些可能性,看看签名

  • 这些函数是否与java-8函数lambdas相同?i、 这不会生成堆分配吗
  • 它们是泛型的专门化(在scala中,还是java中的模板)
  • 或者它们是其他类型的优化

我在哪里可以读到更多关于这方面的内容呢?

我想这是一种固定装置。Scala编译器通常滥用$in类名,一些java代码可能会失败,当您创建静态对象时,它可能会生成一些额外的方法、包等

object Foo {
    case class Bar()
}

val bar = new Foo.Bar().getClass().getSimpleName() shouldEqual "Foo$Bar"

所以,它可能是由编译器或其他类型级别的魔法宏库生成的,我认为这是某种装置。Scala编译器通常滥用$in类名,一些java代码可能会失败,当您创建静态对象时,它可能会生成一些额外的方法、包等

object Foo {
    case class Bar()
}

val bar = new Foo.Bar().getClass().getSimpleName() shouldEqual "Foo$Bar"

所以,它可能是由编译器或其他类型级别的magic宏库生成的,我认为这是某种装置。Scala编译器通常滥用$,可能会生成一些额外的方法、包等。当您创建静态对象FooThis时,我认为这是某种装置。Scala编译器通常滥用$,并且在创建静态对象Foo时可能会生成一些额外的方法、包等