問題タブ [cyclic-reference]

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 投票する
2 に答える
1254 参照

java - Ant を使用して Scala と Java のソース ファイルが混在するプロジェクトをビルドする - 不正な循環参照エラー

現在、Ant ビルドの既存の Java プロジェクトがあり、混合ソース (Java と Scala) でビルドするようにセットアップしようとしています。

私は次のように定義されたJavaインターフェースを持っています-public interface One<T extends Two<? super T>>

Ant ビルドから scalac を実行すると、次のエラーが発生します。

エラー: 型 T に関する不正な循環参照です。

プロジェクトで Scala と Java クラスを相互に依存させたいので、Ant ビルドで javac を実行する前に、最初に scalac タスクを実行します。私の scalac ブロックは次のようになります。

これを回避する方法はありますか?Java コードを使用する他のコードが山ほどあるため、Java コードを変更することはできません。

Java 7 と Scala 2.11.5 を使用しています


これが私の最後に見えるものです:

com.arif.One.java

com.arif.Two.java

com.arif.scala.Main.scala

build.xml

プロジェクトルートのコマンドラインから-「antビルド」を実行すると、次のようになります-

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

scala - 循環参照されたトレイトの Scala 型エラー

このコードを機能させるのに問題があります。それを継承するクラスが「子」を持つことを可能にする特性を作成したいのですが、どうやらChildsetParentメソッドは を望んPでいますが、Parent[P, C]代わりに を取得します。

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

c++ - 隣接リスト表現との C++ 循環依存関係の混乱

C++ に不慣れで申し訳ありませんが、循環依存関係の問題を解決するために静かな時間を費やしたため、これを提起しました。

C++ で隣接リストを表現しようとしています。

私は構造体を持っていますNode

そして私は私のHashファンクターを持っています

この演習でHashNode、 単一のファイルですべてを宣言したいのですが、どのファイルを最初に宣言する必要がありますかNodeHash

Hash両方を前方宣言し、Nodeどちらかを最初に定義しようとしましたが、コンパイルされたものはありませんでした。

PS: これは宿題ではありません。グラフ アルゴリズムのパズルをオンラインで解こうとしています。

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

python - クラスAのインスタンスをクラスAのメンバーに割り当てることは循環参照ですか?

Yummie.instanceのインスタンスでYummieあり、type(Yummie.instance) == Yummie真であるため、それは循環参照の例になりますか? 代わりに弱参照を作成したほうがよいでしょうか? ただし、弱い参照では、インスタンスが存在する別の場所も必要になりYummieます。そうしないと、すぐに再び削除されます。

0 投票する
5 に答える
1860 参照

java - Is cyclic dependency between anonymous class and parent class wrong?

I have following snippet of code:

#xA;

Theres is a cyclic dependency between anonymous LinkedHashMap class and Example class. Is this OK or not? Why not? Is it going to be nicely reclaimed by garbage collector?

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

java - コンストラクター注入による循環依存

次のコンポーネントがあるとします。

ここに画像の説明を入力

  • Producer は数値を生成し、Consumer にメッセージを送信します
  • Producer と Consumer の両方が Monitor にメッセージを送信します
  • モニターは、たとえばランダムに、生成/消費プロセスをいつ停止するかを決定し、メッセージをストッパーに送信します
  • ストッパーはプロデューサーとコンシューマーの両方をきれいに停止します

これは、Java などの可変言語で簡単に実現できます。here で説明されているように、インターフェースで部分的な可変性を許可することでこれを解決できることも知っています。

ただし、可能であっても循環依存関係を持つことはお勧めできません。したがって、すべての参照がコンストラクターによって注入され、最終的なものであると仮定しましょう。

  • プロデューサーはfinal Consumerfinal Monitor
  • 消費者が持っているfinal Monitor
  • モニターはfinal Stopper
  • ストッパーがfinal Producerあり、final Consumer

thisなどの参考文献を見つけましたが、適用されないようです。

このケースと、このような一般的なケースのサイクルを解除するにはどうすればよいでしょうか? つまり、どうすればサイクルを形成しないようにデザインできるかということに一番興味があります。ヒントはありますか?

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

ruby-on-rails - 製造ジェムの循環依存

fabricationgemを使用すると、循環依存関係が発生します。ここで、私が何をしたかをお見せします。2 つのモデルがあるとします。

したがって、それらの製造業者は次のようになります。

大丈夫そうですよね?しかし、私が実行しFabricate(:user)たりFabricate(:message)、循環的な依存関係を取得したりすると、メッセージを作成すると新しいユーザーが作成され、新しいユーザーを作成すると彼へのメッセージが作成されるためです。どうすればこの悪魔の輪を避けることができますか?

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

perl - Perl での循環参照メモリ リークの防止

最近、Perl でのオブジェクトの上書きとメモリ管理について質問しました。受け取った回答の 1 つで、最近書いたスクリプトに問題がある可能性があると通知されました。

parent->child / child->parent多くの関係を持つ非常に複雑なデータ構造を持つスクリプトがあります。これは、循環参照を持つオブジェクトが多いことも意味します。この回答によると、循環参照は Perl の参照カウント メカニズムを「騙し」、適切に処理しないとメモリ リークを引き起こす可能性があります。


循環参照の例:

(免責事項 -- これは私の壮大なアートワークではありません -- @Ikegami さん、この素敵な ASCII 図をありがとうございます! )

問題:各オブジェクトが他のオブジェクトへの参照を持っています。. . これは、いったんスコープ外$parent$child出ても、Perl の参照カウンターは各オブジェクトへの参照が存在すると考えているため、メモリが決して解放されないことを意味します。メモリ内に 2 つのオブジェクトが存在することになり、どちらのデータにもアクセスできなくなります。


私の質問は次のとおりです: Perl がそのクリーンアップを適切に処理することを保証するために、循環参照を処理する適切な方法は何ですか? 自己参照オブジェクトへのすべての外部参照が削除されたときに、Perl が一切の断片を残さないようにするにはどうすればよいでしょうか?