如问题中所述,我正在寻找 java.io.FileOutputStream#write(int, boolean)
native 方法的源代码。我在 Ubuntu 16.04 上,我正在使用 OpenJDK 8。我已经从 http://hg.openjdk.java.net/jdk8 下载了OpenJDK 8 和 OpenJDK 8 HotSpot 项目的源代码。我可以找到其他 native 方法的实现(例如 System.currentTimeMillis
或 System.arrayscopy
)但我找不到 FileOutputStream.write(int, boolean)
.
我在 /usr/lib/jvm/java-8-oracle/jre/lib/amd64
中看到大量库。您能否让我知道所有包含 Java 运行时源代码的地方并帮助我找到 FileOutputStream.write(int, boolean)
实现?
最佳答案
在名为 src/java.base/unix/native/libjava/FileOutputStream_md.c
的文件中有两种实现,一种用于 unix,一种用于 Windows,两者看起来都像这样。
JNIEXPORT void JNICALL
Java_java_io_FileOutputStream_write(JNIEnv *env, jobject this, jint byte, jboolean append) {
writeSingle(env, this, byte, append, fos_fd);
}
关于java - java.io.FileOutputStream.write(int, boolean) native 方法的源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52879860/