最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中channel用法總結

 更新時間:2015年06月08日 16:07:46   作者:liuzx32  
這篇文章主要介紹了Java中channel用法,較為詳細的總結了channel的定義、類型及使用技巧,需要的朋友可以參考下

本文實例總結了Java中channel用法。分享給大家供大家參考。具體分析如下:

1.Channel接口的定義:

public interface Channel
{
  public boolean isOpen( );
  public void close( ) throws IOException;
}

2.Channel的常見類型:

FileChannel, SocketChannel, ServerSocketChannel, and DatagramChannel;
FileChannel通過RandomAccessFile, FileInputStream, FileOutputStream的getChannel()來初始化。

SocketChannel sc = SocketChannel.open();
sc.connect (new InetSocketAddress ("somehost", someport));
ServerSocketChannel ssc = ServerSocketChannel.open( );
ssc.socket().bind (new InetSocketAddress (somelocalport));
DatagramChannel dc = DatagramChannel.open();

3.Scatter/Gather,必須使用ByteBuffer.allocateDirect(100)

public interface ScatteringByteChannel extends ReadableByteChannel {
  public long read (ByteBuffer [] dsts) throws IOException;
  public long read (ByteBuffer [] dsts, int offset, int length) throws IOException;
}
public interface GatheringByteChannel extends WritableByteChannel {
  public long write(ByteBuffer[] srcs) throws IOException;
  public long write(ByteBuffer[] srcs, int offset, int length) throws IOException;
}

4.file lock是和file相關,而不是channel??梢詫M程有效,而不是線程??梢酝ㄟ^內存映射文件(memory-mapped file)來實現(xiàn)線程同步

5.buffer = fileChannel.map (FileChannel.MapMode.READ_ONLY, 100, 200);

6.MappedByteBuffer are direct. load( )將整個文件加載到內存(改方法不能保證完成)。force( )將數(shù)據(jù)flush到硬盤。

7.未綁定端口的DatagramChannel系統(tǒng)會自動分配端口。DatagramChannel的connect(),將保證只接受指定源地址的數(shù)據(jù)包。這時候,可以使用普通的read和write方法,包括Scatter/Gather

希望本文所述對大家的java程序設計有所幫助。

相關文章

  • 詳解SpringBoot修改啟動端口server.port的四種方式

    詳解SpringBoot修改啟動端口server.port的四種方式

    這篇文章主要介紹了詳解SpringBoot修改啟動端口server.port的四種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • Mybatis實現(xiàn)數(shù)據(jù)的增刪改查實例(CRUD)

    Mybatis實現(xiàn)數(shù)據(jù)的增刪改查實例(CRUD)

    本篇文章主要介紹了Mybatis實現(xiàn)數(shù)據(jù)的增刪改查實例(CRUD),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • springboot如何實現(xiàn)前后端分離跨域訪問

    springboot如何實現(xiàn)前后端分離跨域訪問

    這篇文章主要介紹了springboot如何實現(xiàn)前后端分離跨域訪問問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java虛擬機JVM性能優(yōu)化(三):垃圾收集詳解

    Java虛擬機JVM性能優(yōu)化(三):垃圾收集詳解

    這篇文章主要介紹了Java虛擬機JVM性能優(yōu)化(三):垃圾收集詳解,本文講解了眾多的JVM垃圾收集器知識點,需要的朋友可以參考下
    2014-09-09
  • JAVA學習之一步步搭建spring框架

    JAVA學習之一步步搭建spring框架

    這篇文章主要介紹了JAVA學習之一步步搭建spring框架,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 使用Lombok導致打印的tostring中缺少父類的屬性問題

    使用Lombok導致打印的tostring中缺少父類的屬性問題

    使用Lombok時,若發(fā)現(xiàn)@Data注解的@ToString不包含父類屬性,可通過添加@ToString(callSuper=true)解決,此方法確保在生成toString()時包括父類的屬性,有效解決只打印子類屬性的問題,這種做法對于需要完整信息展示的場景尤為重要
    2024-11-11
  • SpringBoot實現(xiàn)過濾器、攔截器與切片的實現(xiàn)和區(qū)別

    SpringBoot實現(xiàn)過濾器、攔截器與切片的實現(xiàn)和區(qū)別

    本文詳細介紹了使用過濾器、攔截器與切片實現(xiàn)每個請求耗時的統(tǒng)計,并比較三者的區(qū)別與聯(lián)系,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • java實現(xiàn)文件歸檔和還原

    java實現(xiàn)文件歸檔和還原

    這篇文章主要為大家詳細介紹了java實現(xiàn)文件歸檔和還原,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Java實現(xiàn)一鍵將Word文檔轉為PDF

    Java實現(xiàn)一鍵將Word文檔轉為PDF

    在開發(fā)中,經常會碰到需要把 Word 文檔轉換成 PDF 格式的需求,Java 有不少好用的庫能實現(xiàn)這個功能,本文為大家介紹了兩個常用的方法,需要的可以了解下
    2025-02-02
  • SpringBoot集成PageHelper及使用方法詳解

    SpringBoot集成PageHelper及使用方法詳解

    這篇文章主要介紹了SpringBoot集成PageHelper及使用方法詳解,PageHelper 是一個開源的 Java 分頁插件,它可以幫助開發(fā)者簡化分頁操作,本文提供部分相關代碼,需要的朋友可以參考下
    2023-10-10

最新評論

大余县| 文安县| 海宁市| 达日县| 如皋市| 乌兰察布市| 柳江县| 顺义区| 鲁甸县| 陆川县| 安陆市| 渭南市| 西林县| 屯留县| 武山县| 茌平县| 积石山| 同心县| 建水县| 贵南县| 乌兰察布市| 南召县| 哈巴河县| 丹东市| 平遥县| 巴里| 涡阳县| 民和| 阳东县| 武宣县| 台南县| 溧水县| 海林市| 德钦县| 托克逊县| 宁晋县| 台中县| 大田县| 右玉县| 延吉市| 济南市|