問題タブ [javolution]

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 に答える
932 参照

maven - Maven Central と java.net の Maven リポジトリを使用しているときに、A と B をプライベート ローカル Maven リポジトリ キャッシュに保持するには、pom.xml をどのように構成すればよいですか?

Maven Central と java.net の Maven リポジトリを使用しているときに、A と B をプライベート ローカル Maven リポジトリ キャッシュに保持するには、pom.xml をどのように構成すればよいですか?

私は 2 つのローカル プライベート プロジェクトを持っており、それらを A と B と呼んでいますが、どちらも のいくつかのバグ修正に依存していますがorg.javolution:javolution-core-java:6.1.0-SNAPSHOT、これは Maven Central にはありません。A と B は両方とも、Maven Central にある他のアーティファクトに依存しています。プロジェクト B はプロジェクト A に依存しています。

~/.m2 と Central のローカル リポジトリ (キャッシュ) で Maven を使用することに慣れていますが、java.net リポジトリ用にプロジェクトを正しく構成していないようです。

<repositories>B から要素を削除すると、明らかな結果が得られます。

要素<repositories>を B に戻すと、実行時に次のようになります。

これを入力していると、おそらくこれは Maven の問題ではなく、NetBeans の問題であることに気づきました。クリーン アンド ビルドを期待して [Re-Run Goals] ボタンをクリックしましたが (これが最後に実行したものです)、実際のクリーン アンド ビルドを実行すると正しくコンパイルされたように見えますが、[Re-Run Goals] は単に mvn を作成します。 exec ゴールを実行します。pom.xml は正しく構成されていますか?

編集: NetBeans 7.4 を使用しています。

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

java - Javolution 構造体の最適化/構成の調整のヒント?

Disruptor リング バッファ内のイベントに Javolution Struct クラスを使用しています。これが、メッセージをよりキャッシュしやすくする最も簡単な方法のように思えました。ただし、これまで Javolution を使用した経験はなく、Javolution のチューニングに関するチュートリアルに関する資料はほとんど見つかりませんでした。

私の質問は次のとおりです。

  1. このアプローチ (つまり、Javolution Structs をイベント クラスとして使用すること) で注意すべき欠点は何ですか?
  2. 注意すべき Javolution 固有の最適化はありますか? これまでに見つけて使用した唯一の調整パラメーターは次のとおりです。

    @Override public boolean isPacked() { true を返します。}

前もって感謝します

- 編集 -

与えるか取るか、クラスは次のようになります。

0 投票する
0 に答える
188 参照

java - Gson/Jacksonを使用してJavolution Structオブジェクトをjsonに変換する方法はありますか?

Javolution Struct オブジェクトから json オブジェクトを作成するために Gson を使用しようとしました。Javolution Struct オブジェクトは通常の POJO ではないため、エラーが発生します。

それを行う方法はありますか、それともできませんか?

[編集 1]: エラー

0 投票する
0 に答える
271 参照

java - 配列の Javolution 構造体の割り当て

配列を含む Javolution.Struct を使用して (メモリを直接) 割り当てようとすると、メモリが「爆発」します。理由がわからない、手がかりが欲しい

クラス A は、クラス B の 50 個の配列を保持します。クラス B は、100 万個の unsigned short の配列を保持します。

これらの配列を 1 つにまとめて必要とする理由は、getByteBuffer() を呼び出して構造全体を単一のメモリとして取得し、非 jvm メモリに直接割り当てられるためです。

メモリには ( 10 GB ) 100MB ではなく 6 GB と表示されますが、理由はわかりません

[javolution 6.1.0]

編集1: 同じメモリの問題を引き起こすことが判明したより簡潔な問題:

main (クラスは Struct obv を拡張する必要がある) 関数に 50m の unsigned16 を割り当てると、実際に 6 GB を割り当てる場所に 100 MB のメモリ フットプリントが予想されます。

編集 2: array() 関数でラップせずに、同じ行を呼び出している場合は発生しません。

これは奇妙です。この配列を含む構造体と、他の構造体メンバー (Signed8 など) が必要です。getByteBuffer() を呼び出すと、別の構造体へのポインターではなく、同じメモリが割り当てられます。

編集 3: これは期待どおりに機能します: ByteBuffer bb = ByteBuffer.allocateDirect(100*1000000); // 100MB を割り当てます

javolution lib の Struct.array 関数にバグがあると思われます。修正されるか、誰かが回避策を投稿するまで、この投稿を開いたままにします..