然而,当我们从单线程应用程序转移到多线程应用程序时,我们得到了在单线程情况下不会发生的分段错误。我们已经使用gdb (在Eclipse中)进行了调试,我发现seg错误是在boost代码中的函数调用期间发生的,也就是说,我尝试访问稀疏矩阵的一个条目,堆栈跟踪进入boost代码并在这些文件中的某个点(我很困惑,因为这些矩阵是在各个线程中分配的,并且所有共享资源都受到互斥锁的保护。此外,我不认为线程经常会导致seg错误,只是多次访问和坏数据。(i, size1_, j, si
当用户在main中输入新数据时,我试图实现数组的动态扩展解决方案,如下所示:bool unos =ComplexNumber工作正常,但是当我输入新数据和在程序中创建新的ComplexNumbers时,我遇到了双重自由或损坏错误的问题。
有什么更好的方法来实现这一点吗?据我所知,当你试图释放已经空闲的内存时,会出现双空闲错误,但似乎我无法解决这个问题,因为我可以看到,不