在C#中,使用Marshal.Copy
方法來替代memcpy
可以避免內(nèi)存泄漏。Marshal.Copy
方法允許你在托管代碼和非托管代碼之間復(fù)制數(shù)據(jù),而且它會負責(zé)管理內(nèi)存分配和釋放。以下是一個使用Marshal.Copy
方法來復(fù)制數(shù)據(jù)的示例:
byte[] sourceArray = new byte[100];
byte[] destinationArray = new byte[100];
// 將源數(shù)組復(fù)制到目標數(shù)組
Marshal.Copy(sourceArray, 0, destinationArray, sourceArray.Length);
使用Marshal.Copy
方法,你不需要手動處理內(nèi)存分配和釋放,因此可以避免內(nèi)存泄漏問題。