本文整理汇总了Java中com.sun.corba.se.pept.transport.Connection.sendWithoutLock方法的典型用法代码示例。如果您正苦于以下问题:Java Connection.sendWithoutLock方法的具体用法?Java Connection.sendWithoutLock怎么用?Java Connection.sendWithoutLock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sun.corba.se.pept.transport.Connection
的用法示例。
在下文中一共展示了Connection.sendWithoutLock方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: sendFragment
import com.sun.corba.se.pept.transport.Connection; //导入方法依赖的package包/类
private void sendFragment(boolean isLastFragment)
{
Connection conn = ((OutputObject)outputObject).getMessageMediator().getConnection();
// REVISIT: need an ORB
//System.out.println("sendFragment: last?: " + isLastFragment);
conn.writeLock();
try {
// Send the fragment
conn.sendWithoutLock(((OutputObject)outputObject));
fragmentCount++;
} finally {
conn.writeUnlock();
}
}
示例2: sendMessage
import com.sun.corba.se.pept.transport.Connection; //导入方法依赖的package包/类
public void sendMessage ()
{
Connection conn =
((OutputObject)outputObject).getMessageMediator().getConnection();
conn.writeLock();
try {
conn.sendWithoutLock((OutputObject)outputObject);
sentFullMessage = true;
} finally {
conn.writeUnlock();
}
}
示例3: sendMessage
import com.sun.corba.se.pept.transport.Connection; //导入方法依赖的package包/类
public void sendMessage ()
{
// Enqueue the last fragment
queue.enqueue(((CDROutputObject)outputObject).getByteBufferWithInfo());
Iterator bufs = iterator();
Connection conn =
((OutputObject)outputObject).getMessageMediator().
getConnection();
// With the collect strategy, we must lock the connection
// while fragments are being sent. This is so that there are
// no interleved fragments in GIOP 1.1.
//
// Note that this thread must not call writeLock again in any
// of its send methods!
conn.writeLock();
try {
// Get a reference to ByteBufferPool so that the ByteBufferWithInfo
// ByteBuffer can be released to the ByteBufferPool
ByteBufferPool byteBufferPool = orb.getByteBufferPool();
while (bufs.hasNext()) {
ByteBufferWithInfo bbwi = (ByteBufferWithInfo)bufs.next();
((CDROutputObject)outputObject).setByteBufferWithInfo(bbwi);
conn.sendWithoutLock(((CDROutputObject)outputObject));
sentFragment = true;
// Release ByteBufferWithInfo's ByteBuffer back to the pool
// of ByteBuffers.
if (debug)
{
// print address of ByteBuffer being released
int bbAddress = System.identityHashCode(bbwi.byteBuffer);
StringBuffer sb = new StringBuffer(80);
sb.append("sendMessage() - releasing ByteBuffer id (");
sb.append(bbAddress).append(") to ByteBufferPool.");
String msg = sb.toString();
dprint(msg);
}
byteBufferPool.releaseByteBuffer(bbwi.byteBuffer);
bbwi.byteBuffer = null;
bbwi = null;
}
sentFullMessage = true;
} finally {
conn.writeUnlock();
}
}