スレッドとクラス インスタンスの両方にローカルな変数を実装する、プラットフォームにとらわれない優れた方法はありますか。つまり、T スレッドと I クラス インスタンスがある場合、その変数の TxI インスタンスがありますか? 私は D プログラミング言語バージョン 2 を使用していますが、言語にとらわれない優れた回答も役に立ちます。
以下にいくつかの制約を示します。
- 同期を要求してはなりません。これにより、スレッド ID をメンバー変数としての変数参照にマッピングするハッシュ テーブルを持つことが除外されます。
- ガベージ コレクションが必要な参照を保持してはなりません。これにより、クラス インスタンスによってインデックス付けされたスレッド ローカルの静的ハッシュ テーブルが除外されます。
- 初期化は、効率のために遅延する必要があります。スレッドが特定のインスタンスの変数にアクセスしない場合は、その変数を作成しないでください。