summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/OutgoingAsync.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/OutgoingAsync.java')
-rw-r--r--java/src/IceInternal/OutgoingAsync.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/java/src/IceInternal/OutgoingAsync.java b/java/src/IceInternal/OutgoingAsync.java
index 596f0749e2e..ef4d3d7c959 100644
--- a/java/src/IceInternal/OutgoingAsync.java
+++ b/java/src/IceInternal/OutgoingAsync.java
@@ -194,6 +194,13 @@ public class OutgoingAsync extends OutgoingAsyncBase implements OutgoingAsyncMes
_state |= StateDone | StateOK;
// _os.resize(0, false); // Don't clear the buffer now, it's
// needed for the collocation optimization
+
+ // For oneway requests after the data has been sent the buffers
+ // can be reused unless this is a collocated invocation. For
+ // collocated invocations the buffer won't be reused as the
+ // because it has already been marked as cached in
+ // invokeCollocated.
+ cacheMessageBuffers();
}
_monitor.notifyAll();