如何防止此结构在JNI调用中泄漏内存?

时间:2013-10-08 01:03:53

标签: java c++ java-native-interface

我正在编写Java包装器库以获取有关系统电源状态的信息。需要什么清理代码来防止任何内存泄漏?

相关方法:

JNIEXPORT jint JNICALL Java_jcmapi_powermanagement_SystemPowerStatus_getACLineStatus(JNIEnv *, jclass)
{
    SYSTEM_POWER_STATUS status;
    GetSystemPowerStatus(&status);
    return status.ACLineStatus;
}

1 个答案:

答案 0 :(得分:4)

只要你不与物体一起摇晃,就没有清理工作要做。在您的示例中,结构不会泄露。它在调用本机方法时在堆栈上创建,并作为回报自动释放。