そのため、私が書いているプログラムでは、双方向の幅優先検索を使用してグラフを検索しています。これを行うには、1 つのスレッドで 1 つの幅優先検索を実行し、別のスレッドで 1 つの幅優先検索を実行します。現在、検索は、他の検索の要素がヒットしたとき、またはゴールが見つかったときに、最適なソリューションを見つけたと言われています (実際には決して起こりませんが、何らかの理由でヒットした場合に備えて..)。
私が直面している問題は、すべての解を見つけ続ける必要があるため、この最適な解をフィールドに保存する必要があることですが、両方のスレッドが同時にヒットするため、フィールド値が台無しになっています (おもう)。
最後にそこに到達したスレッドへのアクセスをブロックする方法はありますか? AtomicReference とその compareAndSet メソッドを使用してみましたが、うまくいきませんでした。値はまだめちゃくちゃです....
ところで、私はJavaを使用しており、スレッドにはCallableオブジェクトを使用しています。