From b37fed3d2d1f5efe193ae49f040d4866c8ab544b Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Thu, 29 Aug 2013 05:38:07 +0000 Subject: [PATCH] the PGF class is now using the new Pool class to manage the life time of the memory allocated in C. --- src/runtime/java/jpgf.c | 6 ------ .../java/org/grammaticalframework/pgf/PGF.java | 15 ++------------- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/src/runtime/java/jpgf.c b/src/runtime/java/jpgf.c index b22638cb5..757667c75 100644 --- a/src/runtime/java/jpgf.c +++ b/src/runtime/java/jpgf.c @@ -129,12 +129,6 @@ Java_org_grammaticalframework_pgf_PGF_getStartCat(JNIEnv* env, jobject self) return jname; } -JNIEXPORT void JNICALL -Java_org_grammaticalframework_pgf_PGF_free(JNIEnv* env, jclass cls, jlong pool) -{ - gu_pool_free((GuPool*) pool); -} - typedef struct { GuMapItor fn; JNIEnv *env; diff --git a/src/runtime/java/org/grammaticalframework/pgf/PGF.java b/src/runtime/java/org/grammaticalframework/pgf/PGF.java index 6bbe5590a..d97a952a2 100644 --- a/src/runtime/java/org/grammaticalframework/pgf/PGF.java +++ b/src/runtime/java/org/grammaticalframework/pgf/PGF.java @@ -26,24 +26,13 @@ public class PGF { ////////////////////////////////////////////////////////////////// // private stuff - - private static native void free(long pool); - - private long pool; + private Pool pool; private long ref; private PGF(long pool, long ref) { - this.pool = pool; + this.pool = new Pool(pool); this.ref = ref; } - - protected void finalize () throws Throwable { - if (pool != 0) { - free(pool); - pool = 0; - ref = 0; - } - } static { System.loadLibrary("jpgf");