在 Linux 上正常编译,但在运行时会生成核心文件

作者: OxesDozen创建于 2022年6月14日更新于 2024年2月19日

我已经在 Windows 系统上编译并运行了这个程序,一切都正常。当我在 Linux 系统上尝试编译和运行时,编译成功,但运行时出现核心文件。经过分析,我认为问题出在 emplace_back() 函数上。在 Windows 环境中,emplace_back() 函数引用了 _M_realloc_insert() 函数;但在 Linux 环境中,同一位置被 _M_emplace_back_aux() 函数所替代。我是新手程序员,不明白这种差异会导致软件出错,希望得到答案。如果我想在 Linux 环境中运行这个程序,如何修改主函数?

内容来源: progschj/ThreadPool