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?