nio

    5熱度

    2回答

    考慮請求 - 響應協議。 我們產生了一個線程來執行select()循環,用於在已接受的非阻塞SocketChannel上進行讀取和寫入操作。這可能看起來像 while (!isStopped()) { selector.select(); Iterator<SelectionKey> selectedKeys = selector.selectedKeys().iterator

    0熱度

    2回答

    有誰知道如何使用URL(http://.../File.mp4)從互聯網下載文件?我正在嘗試使用NIO,但總是以Integer.MAX_VALUE結束。我的文件是2.5GB。 我的代碼: String url = "http://.../Somefile.mp4"; String filename = "Path/to/file/Something.mp4"; boolean

    2熱度

    1回答

    我正在使用Java NIO,並且我想向播放器發送消息,然後立即發送另一條消息。 所以我只是發送2條消息一排: ​​ 客戶端收到消息: client.read(buffer) 所以緩衝區看起來是這樣的: message1+message2 我希望客戶端看到它爲2條消息, 問題是我寫入流中的兩次行,客戶端一次讀取流,並獲取所有數據(2條消息),就像它是一條消息。 有沒有辦法來檢查流是空的,只有

    0熱度

    1回答

    有沒有辦法讓NIO服務器接受連接,然後開始寫入? 如果我使用組合鍵 SelectionKey.OP_ACCEPT | SelectionKey.OP_READ 我得到一個IllegalArgumentException。我有一個接受傳入連接的服務器,然後立即需要寫入該通道。我似乎無法做到這一點。

    -1熱度

    2回答

    我想鎖定文件,然後對其進行一些更新,但每次我想要做這個操作時,我得到:java.nio.channels.overlappingFilelockException,我試圖添加這個異常的catch子句與這個和平的代碼: catch(OverlappingFilelockException e){ lock.relese(); } 但這不適用於我。這裏是我的java代碼,我該怎麼做才能擺脫這種

    1熱度

    1回答

    爲什麼有這種差異? Path docDir Paths.exists(docDir):true docDir.toPath().exists():false 其他屬性: Files.isDirectory(docDir)=true Files.isExecutable(docDir)=true Files.isHidden(docDir)=false Files.isReadabl

    0熱度

    1回答

    大家好我是jboss/wildfly世界的新手我正在研究一個支持tomcat和wildfly的java應用程序,我有一段代碼可以動態地改變文件內容(來自java代碼)......當我執行下面的代碼在tomcat中,它會更新文件並自動重啓......但是當我用wildfly嘗試相同的代碼時,我在文件內容中看不到任何更新。 注意:我正在從管理控制檯中部署.WAR文件(文件位於.WAR中)。 我試過重新

    0熱度

    1回答

    我試圖使用偏移量(位置)將字節緩衝區的內容寫入文件。它的工作原理,當我轉換爲輸入流,而不是當我在一個新的ByteBuffer包裝 這工作: new ByteArrayInputStream(byteBuffer.array(), byteBuffer.position(), byteBuffer.array().length - byteBuffer.position()) 這不 ByteBu

    11熱度

    1回答

    我有一個內存區域包裹着JNI NewDirectByteBuffer。我想在ByteBuffer的清潔程序中運行免費/發佈代碼。有沒有辦法做到這一點,或者我必須提供一個自定義的免費方法,用戶將不得不打電話給ByteBuffer? 編輯 爲了澄清,我分配的內存自己,並呼籲NewDirectByteBuffer自己。我想知道我應該如何協調清潔工的清理工作。

    0熱度

    1回答

    我的理解是否正確:Netty僅爲網絡提供非阻塞io(NIO)?如果你想要阻塞io(即數據庫查詢),你必須使用ChannelHandlerContext中的執行器來阻止EventLoop?