當前位置: 首頁>>代碼示例>>Java>>正文


Java ByteChannel.isOpen方法代碼示例

本文整理匯總了Java中java.nio.channels.ByteChannel.isOpen方法的典型用法代碼示例。如果您正苦於以下問題:Java ByteChannel.isOpen方法的具體用法?Java ByteChannel.isOpen怎麽用?Java ByteChannel.isOpen使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在java.nio.channels.ByteChannel的用法示例。


在下文中一共展示了ByteChannel.isOpen方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: readFromChannel

import java.nio.channels.ByteChannel; //導入方法依賴的package包/類
protected void readFromChannel(ByteChannel sc) {
    int len = 0;
    ByteBuffer inputBuffer = inBuf; // save a local reference just in case it gets nulled out.

    // TODO: probably need some type of synchronization on the input
    // buffer because it gets nulled out in closeComplete due to
    // timeout and then can potentially cause a crash here.
    if (sc.isOpen() && state != State.CLOSED && inputBuffer != null) {
        try {
            len = sc.read(inputBuffer);
        } catch (IOException e) {
            LOG.trace("readFromChannel: exception on read on port " + localPort, e);
            len = -1;
        }

        if (LOG.isTraceEnabled()) {
            LOG.trace("readFromChannel(" + len + " bytes) from port " + localPort);
        }

        if (len >= 0) {
            addToBuffer(bytes, len);
            inBuf.clear();
        } else if (len < 0) {
            closeComplete();
        }
    } else if (LOG.isTraceEnabled()) {
        LOG.trace(MessageFormat.format("readFromChannel: Looks like connection is closed for port {0}, sc.isOpen()={1}, state={2}, inputBuffer={3}", localPort, sc.isOpen(), state, inputBuffer));
    }
}
 
開發者ID:jyeary,項目名稱:dnsjnio,代碼行數:30,代碼來源:Connection.java

示例2: valid

import java.nio.channels.ByteChannel; //導入方法依賴的package包/類
/**
 * This methods tests whether or not this object represents a valid open
 * native file handle.
 *
 * @return <code>true</code> if this object represents a valid
 * native file handle, <code>false</code> otherwise
 */
public boolean valid ()
{
  ByteChannel c = channel;
  return (c != null) && (c.isOpen());
}
 
開發者ID:vilie,項目名稱:javify,代碼行數:13,代碼來源:FileDescriptor.java


注:本文中的java.nio.channels.ByteChannel.isOpen方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。