diff options
author | RĂ¼diger Timm <rt@openoffice.org> | 2006-01-09 08:48:31 +0000 |
---|---|---|
committer | RĂ¼diger Timm <rt@openoffice.org> | 2006-01-09 08:48:31 +0000 |
commit | afd6e95d8bb9f967039448c95895aff779a06984 (patch) | |
tree | e43181220f243a8b91262762479402f61e0deb53 /jurt | |
parent | 685b7dc5658b3fb5c2462fa6d046c77e9fe39040 (diff) |
INTEGRATION: CWS mtg1 (1.6.4); FILE MERGED
2005/11/16 14:38:23 sb 1.6.4.1: #i57753# Avoid long-running finalize methods.
Diffstat (limited to 'jurt')
-rw-r--r-- | jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java b/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java index 7674a0a8a..6e16f2058 100644 --- a/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java +++ b/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java @@ -4,9 +4,9 @@ * * $RCSfile: ProxyFactory.java,v $ * - * $Revision: 1.6 $ + * $Revision: 1.7 $ * - * last change: $Author: hr $ $Date: 2005-09-23 11:50:15 $ + * last change: $Author: rt $ $Date: 2006-01-09 09:48:31 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -36,6 +36,7 @@ package com.sun.star.lib.uno.bridges.java_remote; import com.sun.star.bridge.XBridge; +import com.sun.star.lib.util.AsynchronousFinalizer; import com.sun.star.uno.IQueryInterface; import com.sun.star.uno.Type; import com.sun.star.uno.UnoRuntime; @@ -141,12 +142,16 @@ final class ProxyFactory { } } - protected void finalize() throws Throwable { - try { - request("release", null); - } finally { - decrementDebugCount(); - } + protected void finalize() { + AsynchronousFinalizer.add(new AsynchronousFinalizer.Job() { + public void run() throws Throwable { + try { + request("release", null); + } finally { + decrementDebugCount(); + } + } + }); } private Object request(String operation, Object[] args) throws Throwable |