【问题标题】:Source code for java.io.FileOutputStream.write(int, boolean) native methodjava.io.FileOutputStream.write(int, boolean) 本机方法的源代码
【发布时间】:2018-10-18 17:53:24
【问题描述】:

如问题中所述,我正在寻找 java.io.FileOutputStream#write(int, boolean) 本机方法的源代码。我在 Ubuntu 16.04 上使用 OpenJDK 8。我已经从 http://hg.openjdk.java.net/jdk8 源下载了 OpenJDK 8 和 OpenJDK 8 HotSpot 项目。我可以找到其他本机方法的实现(例如System.currentTimeMillisSystem.arrayscopy),但我找不到FileOutputStream.write(int, boolean)

我在/usr/lib/jvm/java-8-oracle/jre/lib/amd64 中看到了很多库。您能否让我知道所有包含 Java 运行时源代码的地方并帮助我找到 FileOutputStream.write(int, boolean) 实现?

【问题讨论】:

    标签: java jvm java-native-interface native


    【解决方案1】:

    在名为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);
    }
    

    【讨论】:

    猜你喜欢
    • 2013-09-11
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 2011-01-18
    • 2011-06-22
    • 1970-01-01
    • 2023-04-04
    相关资源
    最近更新 更多