当前位置: 首页>>代码示例>>Java>>正文


Java KeyAttachment.getWriteTimeout方法代码示例

本文整理汇总了Java中org.apache.tomcat.util.net.NioEndpoint.KeyAttachment.getWriteTimeout方法的典型用法代码示例。如果您正苦于以下问题:Java KeyAttachment.getWriteTimeout方法的具体用法?Java KeyAttachment.getWriteTimeout怎么用?Java KeyAttachment.getWriteTimeout使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.tomcat.util.net.NioEndpoint.KeyAttachment的用法示例。


在下文中一共展示了KeyAttachment.getWriteTimeout方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: output

import org.apache.tomcat.util.net.NioEndpoint.KeyAttachment; //导入方法依赖的package包/类
@Override
protected void output(byte[] src, int offset, int length)
        throws IOException {
    
    KeyAttachment att =
            (KeyAttachment) socketWrapper.getSocket().getAttachment();
    if ( att == null ) throw new IOException("Key must be cancelled");

    ByteBuffer writeBuffer =
            socketWrapper.getSocket().getBufHandler().getWriteBuffer();

    int thisTime = 0;
    int written = 0;
    while (written < length) {
        int toWrite = Math.min(length - written, writeBuffer.remaining());
        writeBuffer.put(src, offset + written, toWrite);
        
        writeBuffer.flip();

        long writeTimeout = att.getWriteTimeout();
        Selector selector = null;
        try {
            selector = pool.get();
        } catch ( IOException x ) {
            //ignore
        }
        try {
            thisTime = pool.write(writeBuffer, socketWrapper.getSocket(),
                    selector, writeTimeout, true);
        } finally { 
            writeBuffer.clear();
            if ( selector != null ) pool.put(selector);
        }
        written += thisTime;
    }
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:37,代码来源:AjpNioProcessor.java

示例2: output

import org.apache.tomcat.util.net.NioEndpoint.KeyAttachment; //导入方法依赖的package包/类
@Override
protected void output(byte[] src, int offset, int length) throws IOException {

	KeyAttachment att = (KeyAttachment) socketWrapper.getSocket().getAttachment();
	if (att == null)
		throw new IOException("Key must be cancelled");

	ByteBuffer writeBuffer = socketWrapper.getSocket().getBufHandler().getWriteBuffer();

	int thisTime = 0;
	int written = 0;
	while (written < length) {
		int toWrite = Math.min(length - written, writeBuffer.remaining());
		writeBuffer.put(src, offset + written, toWrite);

		writeBuffer.flip();

		long writeTimeout = att.getWriteTimeout();
		Selector selector = null;
		try {
			selector = pool.get();
		} catch (IOException x) {
			// ignore
		}
		try {
			thisTime = pool.write(writeBuffer, socketWrapper.getSocket(), selector, writeTimeout, true);
		} finally {
			writeBuffer.clear();
			if (selector != null)
				pool.put(selector);
		}
		written += thisTime;
	}
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:35,代码来源:AjpNioProcessor.java

示例3: output

import org.apache.tomcat.util.net.NioEndpoint.KeyAttachment; //导入方法依赖的package包/类
@Override
protected void output(byte[] src, int offset, int length)
        throws IOException {
    
    KeyAttachment att =
            (KeyAttachment) socketWrapper.getSocket().getAttachment(false);
    if ( att == null ) throw new IOException("Key must be cancelled");

    ByteBuffer writeBuffer =
            socketWrapper.getSocket().getBufHandler().getWriteBuffer();

    writeBuffer.put(src, offset, length);
    
    writeBuffer.flip();

    long writeTimeout = att.getWriteTimeout();
    Selector selector = null;
    try {
        selector = pool.get();
    } catch ( IOException x ) {
        //ignore
    }
    try {
        pool.write(writeBuffer, socketWrapper.getSocket(), selector,
                writeTimeout, true);
    }finally { 
        writeBuffer.clear();
        if ( selector != null ) pool.put(selector);
    }
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:31,代码来源:AjpNioProcessor.java


注:本文中的org.apache.tomcat.util.net.NioEndpoint.KeyAttachment.getWriteTimeout方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。