2016-06-13 9 views
1

マルチスレッドアプリケーションがexit(x)で終了した場合や、メインからの戻り(ハンドラーの実行順序)の場合は、boost :: thread_specific_ptr/cleanup vs atexit実行順序

  1. ハンドラはのatexitにより
  2. pthread_key_createの/ thread_specific_ptrのクリーンアップハンドラ(いわゆるデストラクタ)

又はその逆のビューを登録しますか?

ありがとうございます。 http://www.cplusplus.com/reference/cstdlib/atexitから

答えて

1

つ以上のatexit関数は、この関数に異なる呼び出しで指定されている場合は指定された最後の機能があることが第一である。すなわち、それらはすべて(スタックとして逆の順序で実行されています出口で実行される)。