問題タブ [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 - 同時変更例外を取得するハッシュマップの問題
マップを使用していくつかの削除を実行しているときに以下のエラーが発生します。これを回避するにはどうすればよいですか?
python - 反復中のカスタム クラスの変更を防止する
インターフェイスを持つクラスがある場合:
add()
...イテレーションの途中で呼び出された場合に、次のような例外がスローされるように設定するにはどうすればよいでしょうか。
更新:
インターフェイスにさらにメソッドが必要な場合は、自由に追加してください。の実装も削除しました__iter__()
。
更新#2 kindallの回答に基づいて、次の疑似実装をモックアップしました。_datastruture とそれにインデックスを付ける関連メソッドは抽象化であり、クラスの作成者は独自のデータ構造トラバーサルとロケーション ポインター メカニズムを記述する必要があることに注意してください。
Update 3
もう少し読んだ後、__del__
おそらく正しい方法ではないようです。以下はより良い解決策かもしれませんが、ユーザーは使い果たされていない反復子を明示的に解放する必要があります。
java - ConcurrentModificationExceptionおよびHashSet.iterator()
私は次のようなforループを持っています
neighbours
ループ内で変更できる場所。それがの原因であることがわかりましたConcurrentModificationException
。そしてhttps://stackoverflow.com/a/8189527/292291から読んでください
したがって、リスト(または一般的なコレクション)を変更する場合は、 イテレーターを使用します。これは、変更を認識しているため、それらが適切に処理されるためです。
だから私は試しました:
しかし、それでは問題は解決しません。なんで?
java - swapCursor() を実行中に ConcurrentModificationException を処理するには?
FragmentActivityから前後にナビゲーションを操作しているときに例外を受け取り、 ListView にカスタム ローダーからロードされたデータ (ローカルの sqlite データベースからロードされています) が含まれており、その処理方法がわかりません...
スタックトレースは次のとおりです。
mCartCursorAdapter.swapCursor(null);
このコード フラグメントの行で例外が発生します(CartFragmentActivity.java:412):
この例外を削除するには、ここで何ができますか?
java - LinkedList checkForComodification error java
Ok so what I am trying to do here is to have a method "running" a process for a given amount of "time" this all seams to work to a degree but it keeps giveing these eceptions. This is the first execption it gives
and then later on in the exicutio it gives this
I dont know what I am doing wrong here am i supposed make this concurrent or something? If so how? I thought that linked list were synchronous by nature? maybe that where im getting this messed up.
Well any way here is the method that im usings:
and here is where I call it in the main method
java - スレッドが使用するリストから削除中に例外が発生しました
それは私のコードの一部です:
スレッドは常に実行されており(その部分は書きませんでした)、removeIntegerメソッドを使用してリストから削除すると、ConcurrentModificationExceptionが発生しました。その問題を解決する方法はありますか?
android - ArrayList にエントリを追加するときの ConcurrentModificationException
MapView にいくつかの MapOverlay を追加しようとしていますが、次のエラーが発生します。
これは、私の AsyncTask の doInBackground() メソッドです。
このエラーが発生する理由と、コードのどこが間違っているのでしょうか?
java - Java での同時変更例外
このコードの実行中に ConcurrentModificationException を取得しています。なぜそれが起こっているのか理解できませんか?
前もって感謝します。
java - グローバル変数では ConcurrentModificationException が発生するが、ローカル変数ではローカルではない
次の関数では、ローカル変数を宣言しallPeopel
ましたitr
(グローバル変数をオーバーライドしています)。ローカル変数 (以下の Astrix の間) をコメントアウトすると、ConcurrentModificationError がスローされます。ただし、グローバル変数の代わりにローカル変数を使用すると、コードは正常に機能します。なぜそうなのか理解できませんか?クラスには他にも多くの関数があるため、より効率的なコードのためにグローバル変数を使用しようとしています。
android - Android ConcurrentModification onDraw()
Android アプリケーションに問題があります。
リストまたはシェイプを常に反復処理し、それらの位置を更新し、リストから項目を削除するスレッドがあります。スレッドの while ループの最後で、postInvalidate() を呼び出して再描画を促します。
ArrayList への変更が行われるコードを次に示します。
onDraw メソッドは、for each ループを使用して、これらの各アイテムを描画します。イテレータを介してリストを変更するだけであるにもかかわらず、onDraw メソッドで同時変更を取得しています。CopyOnWriteArrayList と Collections.synchronized を同じ結果で試しました。
どんな助けでも大歓迎です。