私は変数を使用してThreadLocal
います(Clojureの変数を使用していますが、以下はThreadLocal
Javaのプレーンの場合も同じです)。特定のコードパスが同じスレッドまたはで使用されるかどうかを確認できないという問題が頻繁に発生します。別のスレッド。私の管理下にあるコードの場合、これは明らかにそれほど大きな問題ではありませんが、多態的なサードパーティのコードの場合、シングルスレッド実行を想定しても安全かどうかを静的に判断する方法さえない場合があります。
これはsに固有の問題だと思う傾向がありますThreadLocal
が、安全な方法でそれらを使用する方法についていくつかのアドバイスを聞きたいと思います。