?? abstractnioconnector.java
字號:
/** * */package org.mortbay.jetty.nio;import org.mortbay.io.Buffer;import org.mortbay.io.nio.NIOBuffer;import org.mortbay.jetty.AbstractConnector;/* ------------------------------------------------------------ *//** * @author gregw * */public abstract class AbstractNIOConnector extends AbstractConnector implements NIOConnector{ private boolean _useDirectBuffers=true; /* ------------------------------------------------------------------------------- */ public boolean getUseDirectBuffers() { return _useDirectBuffers; } /* ------------------------------------------------------------------------------- */ /** * @param direct If True (the default), the connector can use NIO direct buffers. * Some JVMs have memory management issues (bugs) with direct buffers. */ public void setUseDirectBuffers(boolean direct) { _useDirectBuffers=direct; } /* ------------------------------------------------------------------------------- */ protected Buffer newBuffer(int size) { // TODO // Header buffers always byte array buffers (efficiency of random access) // There are lots of things to consider here... DIRECT buffers are faster to // send but more expensive to build and access! so we have choices to make... // + headers are constructed bit by bit and parsed bit by bit, so INDiRECT looks // good for them. // + but will a gather write of an INDIRECT header with a DIRECT body be any good? // this needs to be benchmarked. // + Will it be possible to get a DIRECT header buffer just for the gather writes of // content from file mapped buffers? // + Are gather writes worth the effort? Maybe they will work well with two INDIRECT // buffers being copied into a single kernel buffer? // Buffer buf = null; if (size==getHeaderBufferSize()) buf= new NIOBuffer(size, NIOBuffer.INDIRECT); else buf = new NIOBuffer(size, _useDirectBuffers?NIOBuffer.DIRECT:NIOBuffer.INDIRECT); return buf; } }
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -