Как правильно выполнить маршалинг - C#
Формулировка задачи:
extern "C" __declspec(dllexport)
void test(double* a, double* b, int n)
{
for (int i = 0; i < n; i++)
{
b[i] = 10 * a[i];
}
}Решение задачи: «Как правильно выполнить маршалинг»
textual
Листинг программы
[DllImport("cuda8dgemm.dll")]
public static extern void test2_cublas(
[In, Out, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)]
double[] x,
[In, Out, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)]
double[] y,
[In, Out] int size);