問題タブ [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.
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ビルド」を実行すると、次のようになります-
scala - 循環参照されたトレイトの Scala 型エラー
このコードを機能させるのに問題があります。それを継承するクラスが「子」を持つことを可能にする特性を作成したいのですが、どうやらChild
のsetParent
メソッドは を望んP
でいますが、Parent[P, C]
代わりに を取得します。
c++ - 隣接リスト表現との C++ 循環依存関係の混乱
C++ に不慣れで申し訳ありませんが、循環依存関係の問題を解決するために静かな時間を費やしたため、これを提起しました。
C++ で隣接リストを表現しようとしています。
私は構造体を持っていますNode
、
そして私は私のHash
ファンクターを持っています
この演習でHash
はNode
、
単一のファイルですべてを宣言したいのですが、どのファイルを最初に宣言する必要がありますかNode
。Hash
Hash
両方を前方宣言し、Node
どちらかを最初に定義しようとしましたが、コンパイルされたものはありませんでした。
PS: これは宿題ではありません。グラフ アルゴリズムのパズルをオンラインで解こうとしています。
python - クラスAのインスタンスをクラスAのメンバーに割り当てることは循環参照ですか?
Yummie.instance
のインスタンスでYummie
あり、type(Yummie.instance) == Yummie
真であるため、それは循環参照の例になりますか? 代わりに弱参照を作成したほうがよいでしょうか? ただし、弱い参照では、インスタンスが存在する別の場所も必要になりYummie
ます。そうしないと、すぐに再び削除されます。
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?
java - コンストラクター注入による循環依存
次のコンポーネントがあるとします。
- Producer は数値を生成し、Consumer にメッセージを送信します
- Producer と Consumer の両方が Monitor にメッセージを送信します
- モニターは、たとえばランダムに、生成/消費プロセスをいつ停止するかを決定し、メッセージをストッパーに送信します
- ストッパーはプロデューサーとコンシューマーの両方をきれいに停止します
これは、Java などの可変言語で簡単に実現できます。here で説明されているように、インターフェースで部分的な可変性を許可することでこれを解決できることも知っています。
ただし、可能であっても循環依存関係を持つことはお勧めできません。したがって、すべての参照がコンストラクターによって注入され、最終的なものであると仮定しましょう。
- プロデューサーは
final Consumer
、final Monitor
- 消費者が持っている
final Monitor
- モニターは
final Stopper
- ストッパーが
final Producer
あり、final Consumer
thisなどの参考文献を見つけましたが、適用されないようです。
このケースと、このような一般的なケースのサイクルを解除するにはどうすればよいでしょうか? つまり、どうすればサイクルを形成しないようにデザインできるかということに一番興味があります。ヒントはありますか?
ruby-on-rails - 製造ジェムの循環依存
fabrication
gemを使用すると、循環依存関係が発生します。ここで、私が何をしたかをお見せします。2 つのモデルがあるとします。
したがって、それらの製造業者は次のようになります。
大丈夫そうですよね?しかし、私が実行しFabricate(:user)
たりFabricate(:message)
、循環的な依存関係を取得したりすると、メッセージを作成すると新しいユーザーが作成され、新しいユーザーを作成すると彼へのメッセージが作成されるためです。どうすればこの悪魔の輪を避けることができますか?
perl - Perl での循環参照メモリ リークの防止
最近、Perl でのオブジェクトの上書きとメモリ管理について質問しました。受け取った回答の 1 つで、最近書いたスクリプトに問題がある可能性があると通知されました。
parent->child / child->parent
多くの関係を持つ非常に複雑なデータ構造を持つスクリプトがあります。これは、循環参照を持つオブジェクトが多いことも意味します。この回答によると、循環参照は Perl の参照カウント メカニズムを「騙し」、適切に処理しないとメモリ リークを引き起こす可能性があります。
循環参照の例:
(免責事項 -- これは私の壮大なアートワークではありません -- @Ikegami さん、この素敵な ASCII 図をありがとうございます! )
問題:各オブジェクトが他のオブジェクトへの参照を持っています。. . これは、いったんスコープ外$parent
に$child
出ても、Perl の参照カウンターは各オブジェクトへの参照が存在すると考えているため、メモリが決して解放されないことを意味します。メモリ内に 2 つのオブジェクトが存在することになり、どちらのデータにもアクセスできなくなります。
私の質問は次のとおりです: Perl がそのクリーンアップを適切に処理することを保証するために、循環参照を処理する適切な方法は何ですか? 自己参照オブジェクトへのすべての外部参照が削除されたときに、Perl が一切の断片を残さないようにするにはどうすればよいでしょうか?