1

当在本机代码中使用从ParcelFileDescriptor获得的文件描述符时,本机端是否应该在fdopen之后使用fclose

文档指出ParcelaleFileDescriptor实例拥有文件描述符,应该通过它关闭它。我不知道在关闭文件描述符之前关闭本机 FILE 指针的影响。

伪代码:

1) JAVA:
    // Obtain the file descriptor and pass it to the native method
    ParcelFileDescriptor descriptor  = contentResolver.openFileDescriptor(uri, "w");
    nativeMethod(descriptor.getFD());

2) C++:
    void nativeMethod(const int fd)
    {
        FILE* fp = fdopen(fd, "wb");    

        ..... // do something

        fclose(fp); // Close the file pointer <-- Is this valid?
    }

3) JAVA:
    // Back from the native method, close the file descriptor
    descriptor.close();
4

0 回答 0