1. 程式人生 > >linux下malloc開辟內存失敗的問題

linux下malloc開辟內存失敗的問題

處理 好的 cal alloc 系統 實現 c++ 宋體 分配

操作系統: ubuntu 17.04

開發語言:QT

程序是在QT下面編譯CPURE-FTP代碼,實現了FTP上傳功能。同時我需要結合我自己的應用來控制文件的上傳和下載功能。還可以4G,而pure-ftp模塊上傳下載一次需要調用Malloc函數,放在線程裏面也好,同程序開辟多個線程也好,都會引起Malloc分配內存失敗。這個是個非常頭疼的問題。

通過開辟線程來運行PURE-FTP模塊。然後開辟其他線程來於此溝通。我的內存

最後也有人提議,把內存模塊分配好後,避免在線程裏調用,但是我估計FTP模塊的上傳下載是針對多個用戶的,內存的臨時開辟還是非常必要的,不能事先開辟好的。

我覺得問題可能是在線程內開辟受一定限制或者程序開辟受限有一定的關聯,具體內存的管理以及分析確實要好好下功夫去看看,但時間來不及。

我考慮到通過C調用C++模塊去處理內存。

C代碼裏面的 malloc放棄使用,去調用C++模塊自己去寫的函數。測試通過!

linux下malloc開辟內存失敗的問題