nio

    5热度

    3回答

    是否可以使用NIO来处理来自进程的stdout?我已经与java.io一起工作,但这是一个练习,可以学习更多关于NIO的知识,并探讨性能改进的可能性。 基本上我希望尽可能快地将大量文本从stdout流入缓冲区而不会阻塞,然后稍后处理该缓冲区的内容。麻烦的是,我似乎无法弄清楚正确的巫术使它与NIO合作。这就是我现在: ProcessBuilder pb = new ProcessBuilder(..

    3热度

    2回答

    没有任何人有一个很好的比喻(或者,做不到这一点,一个很好的资源)用于描述关系之间的缓冲区,溪流,读者,渠道选择等的java.io和java.nio中? 感谢

    7热度

    3回答

    我试图通过Java NIO通道接收XML事件流。我对NIO和StAX解析都很陌生,所以我可以非常轻松地忽略某些东西:) 我的搜索将我引入了几个SAX和StAX实现,但它们似乎都在InputStreams和InputSources上运行 - 而不是NIO通道。我已经作出两个最接近的尝试已经获得来自信道的InputStream和创建的PipedInputStream: // method 1 Pip

    3热度

    3回答

    有没有办法用BufferedReader读取ByteBuffer,而不必首先将它变成String?我想通读一个相当大的ByteBuffer作为文本行,并且出于性能原因,我想避免将它写入磁盘。在ByteBuffer上调用toString不起作用,因为结果字符串太大(它会抛出java.lang.OutOfMemoryError:Java堆空间)。我原以为API中会有东西将一个ByteBuffer包装在

    2热度

    2回答

    我正在从事一个在线游戏,并且在服务器端工作时遇到了一些小麻烦。 在Java中使用非阻塞套接字时,处理完整分组数据集的最佳操作过程是什么?在所有数据都可用之前无法处理完整分组数据集?例如,通过套接字发送大的2D平铺地图。 我能想到的两种方法处理: 分配字节缓冲区大到足以处理来处理从我的例子大型2D瓷砖地图所需要的完整的数据集。继续将读取数据添加到缓冲区,直到全部收到并从那里进行处理。 如果ByteB

    13热度

    4回答

    我有一个基本问题。为什么以及如何SelectableChannel的注册方法可以阻止呼叫。 让我提供一个场景。 我已经在类Register中创建了一个Selector对象,如下所示。 private static Selector selector = Selector.open(); 我也有一个方法在同一类(注册)以注册与选择器通道。 public static SelectionKey r

    0热度

    2回答

    我需要实现一个只有一个选择器(静态)的服务器;多个线程尝试将通道注册到相同的静态选择器。 我试图实现服务器,但问题是静态选择器第一次工作,即注册通道;但在下次调用注册不同的频道线程被绞死。 我相信上面的解释非常含糊。但请合作。任何指针将不胜感激。

    1热度

    2回答

    我想写一个简单的程序来打开一个套接字通道到本地地址。我得到一个连接被拒绝异常,每当我运行这个程序 import java.net.InetAddress; import java.net.InetSocketAddress; import java.nio.channels.SocketChannel; public class testSocket { public sta

    6热度

    2回答

    我正在写一个Java应用程序,将实例化一个类的对象来表示对我的应用程序的另一端连接,并与外部系统注册客户。 每个客户对象在其内具有两个嵌套类,代表前端和后端。前端类将连续地从实际的客户端接收数据,和发送指示和数据传送到后端类,这将需要从前端该数据,并将其在使用适当的格式和协议发送到外部系统该系统需要。 在设计上,我们希望有一个客户对象的每个实例是一个线程。然后,在每个线程中自然会有两个套接字[ED

    2热度

    1回答

    有没有办法将grizzly动态/透明绑定到我的Java应用程序(也许使用spring)?或者是Web容器的IO处理部分(例如Glassfish)?