C++ 라이브러리에서 Java로 기능을 노출하는 동안 최근에 C++ shared_ptr
포인터 관련 문제가 발생했습니다. 이 경우 해당 객체와 관련된 객체뿐만 아니라 jlong
핸들도 Java 부분 만 있지만 이후 구조는 스마트 포인터를 사용하여 해당 객체에 액세스합니다.C++ shared_ptr 및 Java 기본 객체 소유권
내가 가진 문제는 다음과 같습니다. 스마트 포인터가 손상되거나 재설정되면 기본 개체가 삭제됩니다. 그러나 Java 참조 점은 여전히 해당 객체를 가리 킵니다.
많은 노력을했지만 Java-Side에서 소유권을 유지 관리하지 못했습니다. 그 문제에 대한 모범 사례 또는 해결책이 있습니까?
사실 그 전적으로 동의하지만, 나는 C++ 코드를 변경할 수는 없지만 Java 측만 변경할 수 있다고 말해야합니다. – fyr