問題タブ [concurrentmodification]
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 - イテレータの現在のオブジェクトをリストの最後に移動
Iterator (LinkedList.iterator()) オブジェクトを使用して Java で問題が発生しています。ループでは、反復子オブジェクトをある場所からリストの最後に移動する必要があります。
例えば:
何らかの理由で this.transitions を複製できません。それは可能ですか、それとも本当にクローン方法を使用する必要がありますか?
編集:現在、私はそれをしています:
しかし、問題はこの 2 行目だけです。itens を追加できません。同じオブジェクトの反復子の内部にいます。:(
android - Android の ConcurrentModificationException
まず最初に、この質問を再度お尋ねすることをお詫びしますが、私の問題に対する解決策はまだ見つかりません。
MyLocationOverlay で自分の位置を特定できるアプリがあり、itemizedOverlay で友人の位置を描画します。しかし、アプリは ConcurrentModificationExcepion でクラッシュします
私の場所では、この単一のコード(以前に初期化されたもの)で MyLocationOverlay を使用します。
友人の位置については、ItemizedOverlay とメソッドを使用して位置を描画しました。ItemizedOverlay は次のとおりです。
そして、これは位置を描画する方法です:
2 つの異なる mapView (mapView と mapView2) を使用するのは、そうしないと draw メソッドが myLocationOverlay ドットを消去するためです。mapView2.postInvalidate();
私が言ったように、ConcurrentModificationException を取得します。いくつかの解決策を見つけましたが、どのように適用すればよいかわかりません... それは私のキャリアの終わりのためのものなので、私にとって非常に重要です. どうもありがとう!
java - Android シリアル化により、ConcurrentModificationException が発生します。どうすればこれを回避できますか?
さまざまな ArrayLists を保持するカスタム クラスであるオブジェクトをシリアル化すると、Concurrent Mod Exception が頻繁に発生します。明らかに、1 つ以上の arraylist がこれをスローしています。しかし、私はそれをどこで、どのように修正するのかわかりません。イテレータを実装することは私の最初のアイデアですが、シリアル化のためにそれを行うにはどうすればよいですか?
これは私のシリアル化コードです:enter code here
java - Android os で Java の未処理のランタイム例外をトラップするためのベスト プラクティスは?
アンドロイドでの e3roid シーンの作成中に発火したプロセス中に、完全にトラップしたい例外に遭遇し続けます。おそらく、ユーザーエクスペリエンスを奪う即時の対話ではなく、余暇に横断できるバック例外トラッカーを作成する必要があります.
アプリ全体が例外ダイアログで停止します.. ConcurrentModificationException をグローバルスコープからトラップして、未知の状況が原因でそのようなイベントが発生した場合にアプリ全体が破棄されないようにしたいと考えています..
** 編集 **
onSceneTouchEvent 中にこのブロックが起動される間
私はブロックを発射するのが速すぎるようです。私は物事を遅くする必要があります。
* ファローアップ *
私は問題を解決したように見えました..私はこれらの1つをしました...
ボールスポーン ブール値フラグを配置し、スポーン値を渡す 2 番目の手順を行った後、非常にゴールデンであることがわかります... フィールドを作成し、反復の最後に設定され、横方向の前にチェックされます。リストが発生します..フーフー!! 非常に甘いです!
グローバルトラッピングは本当に必要ありません..古き良きデバッグだけです。それでも、すべてのエラーのグローバル ハンドラを実装したいと考えています。TODO
私は再び同時エラーを発生させました..
スクリーンショット
- フォローアップ 2 * もう 1 つ
ConcurrentModificationException をキャッチしようとしました
最後のスクリーンショットでわかるように、上記のメソッドは呼び出されません。
ConcurrentModificationException は、アプリをクラッシュさせて例外ダイアログを表示します。
** ファローアップ **
私が追加しました
実行時に追加の実装されていないメソッド
それでも例外トラップはありません...
私も追加しました
いいえ、まだトラップはありません...
ああ
フーフー!!
例外をキャッチしました!! スクリーン ショットをチェックしてください... !!!!! が表示されます。
http://img17.imageshack.us/img17/135/concurrentmodification.png
Thx のおかげで、Java 例外処理の底にたどり着くのに苦労しました!!
私は並行問題を
削除...
パブリック クラス LauncherActivity は E3Activity を拡張し、 UncaughtExceptionHandler 、FPSListener、SceneUpdateListener を実装します
私がオリジナルにしなければならなかったこと... UncaughtExceptionHandler 実装なし
ジョニー・リーによって非常に詳細に説明されたクラスを追加しました。blog.dimond.de/?p=63
本当に甘いもの。
java - サイズが変化するリストのすべての要素に対して Thread.join() を行う方法は?
すべてアクティブに処理している多数のワーカー スレッドと、それらすべてが完了するのを待機するスーパーバイザー スレッドがあるとします。伝統的に、私は次のようなことができました:
..すべてがうまくいくでしょう。ただし、この場合、ワーカー リスト (ArrayList スタッフ) のサイズは可変であり、任意の時点で変更される可能性があります。私の最善の知識では、次のようなものが機能するはずです。
ただし、これでも、行で conncurrentModificationException が発生します。
...イテレータを取得すると、リスト自体とは別のものだと思ったので、これは奇妙に思えます。私の次のアイデアは、イテレータまたはスタッフ リストを複製して、元の変更リストとは別のものにすることですが、最初に専門家に試してもらいたいと思いました。
java - TreeSet でイテレータを使用する
状況:カスタム オブジェクトの TreeSet があり、カスタム Comparator も使用しています。この TreeSet で使用する反復子を作成しました。
質問: while ループ内で TreeSet に新しい要素を追加すると、その新しい要素はすぐに並べ替えられるかどうかを知りたいです。つまり、while ループ内に新しい要素を追加し、それが現在 c で保持している要素よりも小さい場合、次の反復では、最後の反復と同じ要素を c で取得することになりますか?(並べ替えの後、新しく追加された要素は現在の要素の前の場所を占有するためです)。
java - スレッド「メイン」で例外が発生した数独ソルバー java.util.ConcurrentModificationException のイテレータ
次のエラーが表示されます。
java.util.HashMap$KeyIterator.next
明示的にキーセットを取得できないため、エラーメッセージとjava.util.HashMap$HashIterator.nextEntry
エラーメッセージがわかりませんHashSet
。イテレータはデフォルトでキーセットを通過していると想定していました。
私はスレッドを使用していません。再帰呼び出しだけです。何が起きてる?
編集:
コードを次のように変更しました。
と私はまだ取得していConcurrentModificationException
ます、これはなぜですか?
java - コンカレントモディフィケーション例外
以下のスニペットを使用して、アドホック列を除外する必要があるというひねりを加えて、スプレッドシートを処理しようとしています。私はそれを行う大まかな方法を知っています。例外をArrayListに入れて、それぞれのリストを処理し、現在の行の列をインクリメントするのは厄介ですが、それを実行するだけです。
しかし、私はタイトルのエラーを受け取っています。これは決して起こらないと信じています。私はArrayListをループして比較しているだけで、何も変更していません。エラーはどこにありますか?例外リストを処理するためのより良い方法はありますか?
java - ConcurrentModificationExceptionなしでfor-eachループを使用して反復しながらコレクションを変更するにはどうすればよいですか?
for-eachループを使用してコレクションを反復処理しながらコレクションを変更すると、が得られConcurrentModificationException
ます。回避策はありますか?
java - 同期されたメソッド内からのメソッドの呼び出し
私は奇妙な問題に直面しており、同期されたメソッドで正確に何が起こるのか疑問に思っています。方法があるとしましょう
call() メソッドが実行されている間に、別のオブジェクトがこの同期された example() メソッドに入ることができますか? call() が戻ると、ConcurrentModificationException が発生する可能性があります。トラブルを避けるために何をすべきか?