あるスレッドで辞書が更新されており、別のスレッドでその値を繰り返し処理したいと思います。通常はロックを使用しますが、このコードはパフォーマンスが非常に重要であり、可能な限りそれを避けたいと思います。
私の場合の特別な特徴は、イテレータの絶対的な正確さを気にしないことです。反復の開始後に削除されたエントリを見逃したり、後で追加されたエントリを取得したりする場合は、問題ありません。「反復中に変更された辞書のサイズ」の例外が発生しないことだけが必要です。
正しさに対するこの緩和された制約を考えると、ロックを使用せずに辞書を反復する効率的な方法はありますか?
注:keys()
Python 2.xではスレッドセーフであることは承知していますが、3.xではその動作が変更されているため、回避したいと思います。