網(wǎng)站模板怎么做有沒有免費的廣告平臺
【CSharp】ushort[]的IntPtr快速轉(zhuǎn)換為ushort[]無符號短整型數(shù)組
- 1.背景
- 2.代碼
1.背景
參考博客:
【CSharp】無符號短整型數(shù)組ushort[]轉(zhuǎn)化為IntPtr
https://blog.csdn.net/jn10010537/article/details/139278321?spm=1001.2014.3001.5501
探測器/相機SDK獲得是InPtr指針,它指向ushort[]無符號短整型數(shù)組的內(nèi)存地址.
我們?nèi)绻捎脤nPtr轉(zhuǎn)換回ushort*后,再通過指針進(jìn)行遍歷數(shù)組取值,那么效率不高,
特別是探測器/相機都是幾百萬像素以上,基本不建議這么實現(xiàn)!
本博客通過Marshal.Copy以及Buffer.BlockCopy實現(xiàn)快速的數(shù)組拷貝和轉(zhuǎn)化無符號短整型數(shù)組ushort[]
關(guān)于Marshal.Copy 方法:將數(shù)據(jù)從托管數(shù)組復(fù)制到非托管內(nèi)存指針,或從非托管內(nèi)存指針復(fù)制到托管數(shù)組。
命名空間:System.Runtime.InteropServices
程序集:System.R