私には2つのクラスのインスタンスがたくさんありChildren
、それらは多対多のエンティティ関係Animal
を持っています。
与えられたデータ構造に、それにマップされてChildren
いるリストを取得できるようにしたいAnimal
、またはその逆を行いたい。任意の場合について、それにマップされているAnimal
リストを取得できます。Children
このデータ構造は、任意のスレッドからアクセスできるように並行する必要があります。
したがって、マッピングの例を考えてみましょう。
Child1 -> Animal1
Child1 -> Animal2
Child1 -> Animal3
Child2 -> Animal2
Child2 -> Animal3
Child3 -> Animal3
返さChild1
れるリストを取得したいのですが:[ Animal1, Animal2, Animal2 ]
。
返さAnimal2
れるリストを取得したいのですが:[ Child2, Child3 ]
。
これを行うために私が考えることができる唯一の方法は、辞書とこの辞書の各項目(動物と子供の両方)のリストを使用することでしたが、リストの同期のロックにも対処する必要があり、面倒です。