[英]C++ Memory allocation in a fast way
我有以下代碼:
privateMesh.face[positionSaverFN].vertexMDL = new vector3D[privateMesh.face[positionSaverFN].numOfPoints];
該代碼運行67,000次,並且需要0.165秒的時間。 對我來說太長了,我正在嘗試找到最快的方法。
有什么建議么?
好吧,如果您要執行60000次,則無能為力。 由於new
使用,它會盡可能快地運行。
解決這個問題的方法之一可能是重新設計你的應用程序,所以它並沒有這樣做60000次。 可能您只能執行一次,然后重復使用即可。
經常做一些事情的最快的方法就是不做 :-)
計算所需的內存總量。 分配一個大緩沖區。 通過指針數組訪問,指向此緩沖區的后續區域。 顯然,您將需要初始化此數組,但是與使用malloc分配小區域相比,它將更快。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.