static-initialization

    8熱度

    3回答

    在某些時候,我記得讀到直到main()的第一行才能安全地創建線程,因爲編譯器會插入特殊的代碼來在靜態初始化時間內運行線程工作。所以如果你有一個全局對象在構建時創建一個線程,你的程序可能會崩潰。但是現在我找不到原文,我很好奇這個限制有多嚴格 - 這是標準嚴格遵守的嗎?在大多數編譯器上它是真的嗎?它會在C++ 0x中保持真實嗎?一個符合標準的編譯器是否有可能自己創建靜態初始化程序多線程? (例如,檢測