Inheritance: System.Runtime.InteropServices.SafeHandle
示例#1
0
        internal IJvmProxy CopyCLRProxy(JNIEnv env, JniGlobalHandle obj)
        {
            IJvmProxy proxy = CLRConstructor.CreateProxy(env);

            proxy.Copy(env, obj);
            return(proxy);
        }
示例#2
0
        public static void crash(int i, JniGlobalHandle handle)
        {
            //Console.WriteLine("a" + i);
            var sharedBuffer = new byte[10 * 1024 * 100];

            //Console.WriteLine("b");
            DirectByteBuffer execJavaBuffer = new DirectByteBuffer(sharedBuffer);

            //Console.WriteLine("c");
            try
            {
                String duplicate = Bridge.CreateProxy<String>(handle);
                string s = duplicate.toString();
            }
            catch (System.Exception)
            {
                Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
                throw;
            }

            //Console.WriteLine("d");
            GC.Collect(3, GCCollectionMode.Forced);
            GC.WaitForPendingFinalizers();
        }
示例#3
0
 internal JniLocalHandle NewObjectArrayPtr(int len, JniGlobalHandle clazz, IJvmProxy init)
 {
     JniLocalHandle res = newObjectArray(envPtr, len, clazz, init == null ? JniGlobalHandle.Zero : init.JvmHandle);
     ExceptionTest();
     return res;
 }
示例#4
0
 public static bool IsNull(JniGlobalHandle handle)
 {
     return(handle == null || handle.IsInvalid);
 }
示例#5
0
		public static bool IsNull(JniGlobalHandle handle)
        {
            return handle == null || handle.IsInvalid;
        }
示例#6
0
 internal IJvmProxy CopyCLRProxy(JNIEnv env, JniGlobalHandle obj)
 {
     IJvmProxy proxy = CLRConstructor.CreateProxy(env);
     proxy.Copy(env, obj);
     return proxy;
 }