1

以下にリンクされている Niklas Frykholm による非常に素晴らしいブログ投稿を読んでいるときに、私は頭を包み込むことができない何かに出くわしました。

http://bitsquid.blogspot.nl/2012/01/sensible-error-handling-part-1.html

このコードは私を混乱させました:

__THREAD Array<const char *> *_error_context_name;
__THREAD Array<const char *> *_error_context_data;

コードは、単純なスタックとして使用される文字列の配列へのスレッド ローカル ポインターを定義します。私がよく理解していないのは、クロスプラットフォームの方法で配列を初期化して破棄する方法です? また、これは dll 境界でどのように機能しますか?

4

1 に答える 1

1

変数がプログラム内のどこに解決されるかについて、ローカルのみのコメントをスレッド化します。他の変数と同様に、使用する前に割り当てる必要があります。

健全性とパフォーマンスのために、スレッドが開始されたときに実行することをお勧めします。

于 2013-03-31T16:34:50.163 に答える