問題タブ [nio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1064 参照

java - MINA経由でデータを適切に送信するには?

私は MINA を使い始めようとしていますが、すべての例では、同じタイプのデータを何度も書き込むことができるメソッドを使用するのではなく、セッションにデータが書き込まれているようです。

org.apache.mina.filter.codec.demux.MessageEncoder/ MessageDecoderto encode/メッセージを利用しようとしていdecodeます。これにより、例のようにコード内でインラインで実行するのではなく、常に中央の場所でタスクを実行できます。

( を実装し、ファクトリのメソッドを介して追加された) を持つ(ProtocolCodecFactoryを拡張する ) があるとします。ユーザー名/パスワードのデータで直接呼び出すのではなく、次のようにする必要があるということですか?DemuxingProtocolCodecFactoryLoginRequestEncoderMessageEncoder<LoginRequest>addMessageEncodersession.write()

うそをつくつもりはありません... MINA はネットワーキング プロセスを簡素化するように思われます。

0 投票する
2 に答える
2635 参照

java - Java.NIO InvalidIndexException - 大きなファイルへのランダムアクセスで読み書きする方法

(サイズがわずか 54 KB のファイル)のjava.nio.MappedByteBuffer周りを作成しました。java.io.RandomAccessFile結果MappedByteBufferの「容量」と「制限」は約 12 KB であるため、呼び出そうとすると、mybytebuffer.get(i > 13044)または.mybytebuffer.put(i > 13044, value)InvalidIndexException

この動作はすべて、Sun の公式 javadoc に記載されています。私の質問はjava.nio ByteBuffers、ファイル内の任意の場所で読み取りまたは書き込みを行う方法です (ランダムアクセスが必要です)。非順次アクセスを説明する Java NIO の例やドキュメントが見つからないようです。

0 投票する
1 に答える
28473 参照

java - java.nio.file はどこにありますか

java.nio.file 名前空間が必要であることを示す Java ドキュメントを読んでいます。しかし、それをインポートしようとすると、プリコンパイラはそれが存在しないと不平を言っています。

調子はどう?

0 投票する
1 に答える
829 参照

java - Java、C ++、NIO、mmapedバッファー、同期

解説:

私はLinux/Macを使用しています。

私のコードの一部はJavaであり、私のコードの一部はC++です。

どちらも、高速通信のために同じファイルをmmapしています。

JavaとC++のコードを同期させたい。

私は次のことを知っています:

1)Javaで2つのスレッドが与えられた場合、ロック/モニターを使用できます。

2)Javaで1つのコード、C ++で1つのコードが与えられた場合、tcp/ipを介してそれらを同期させることができます

3)メモリの領域をmmapした2つのC ++コードが与えられた場合、mmapされた領域の整数に対してgccのcompare_and_swapを使用してそれらを同期させることができます。

質問:

コードの一部がJavaであり、コードの一部がC ++であるとすると、どういうわけか(3)-JVMはある種のアトミックコンペアアンドスワップをサポートしますか?では、私のJavaコードとC ++コードの両方で、この整数を一種のロックとして使用できますか?

ありがとう!

0 投票する
2 に答える
4771 参照

java - java.io. *を使用せずにFileChannelを取得します(純粋なNIOを使用します)

最近、この回答java.ioに対して、 「純粋なNIO」を使用したい場合は遠ざける必要があるというコメントがありました。
これは簡略化されたコードです(ファイルをコピーします):

(コードは非常に単純化されています:try-finallyとloopを削除しました)

私の質問は、 java.io( ) FileChannelを使用せずにファイルを読み取るためのまたは他のNIOクラスを取得する方法です。FileInputStream

編集:
Java 6(またはそれ以前のみ)

0 投票する
1 に答える
195 参照

java - Spring/Tomcat ベースではない Java 7 Cloud Server Framework が必要ですか?

クラウド サービスをより洗練されたものにすることを目的とした、小さく軽量な Java 7 ベースのオープン ソース プロジェクトに対する需要はありますか? 私は生涯でいくつかのサーバーを作成してきましたが、これが必要かどうか興味がありました。

私の考えは、シンプルで軽量に保ち、ネットワーク通信に Java 7 NIO 2 機能を使用することでした。また、ラック ソリューション (MBONE) 内のサーバー間のローカル クラウド ベースの通信にブロードキャスト アドレスを使用するか、シリアライゼーション ベースの通信プロトコルを使用することも考えていました。

Spring や Tomcat は太りすぎで、古い Java テクノロジで記述されているため、使用したくありません。さらに、Apache テクノロジーに依存しすぎているため、別の Apache プロジェクトを使用したくありません。ここでのキーワードは「小さい」「軽い」「持ち運びやすい」「効率的」です。

おそらくこれは、バックグラウンド サーバーやモバイル クラウド ネットワークとしてモバイル デバイスにインストールされて使用される可能性さえあるでしょう。

0 投票する
30 に答える
346415 参照

java - Javaでファイルを再帰的にリストする

Javaのディレクトリの下にあるすべてのファイルを再帰的に一覧表示するにはどうすればよいですか? フレームワークはユーティリティを提供しますか?

ハックな実装をたくさん見ました。しかし、フレームワークやnioからはありません

0 投票する
2 に答える
318 参照

java - このシングル スレッドの Java クライアントをスケーリングする方法は?

Java で Stomp プロトコル クライアントを作成していますが、IO を処理するスレッドが 1 つしかありません。これは、スレッドが受信データをアプリケーションに読み書きすることを意味します。私の問題は、将来、マルチスレッドと NIO を使用してこのアプリケーションをスケーリングする必要がある場合、どのように調整できるかということです。

私のIOプロセッサスレッドは「TcpLink」リンクと呼ばれ、次の骨格があります

複数のスレッドが着信メッセージをディスパッチできるようにする必要がある場合、このクラスをどのように変更する必要がありますか?

ありがとう!

0 投票する
1 に答える
2194 参照

java - nio FileChannel.transferFrom 転送中 0?

transferFromを使用して、NIOを使用していくつかの小さなファイルからファイルを組み立てようとしています。

transferFrom の呼び出しは 0 を返します。例外はありません。同期動作をオンにするために何も行われません。

ログの例: