Как скопировать данные из небольших массивов в определенные места в большом массиве - PullRequest
0 голосов
/ 31 октября 2019

В моем приложении я хотел бы скопировать данные (плавающие) из нескольких меньших массивов / металлических буферов в определенные места в большом глобальном массиве и сделать это как можно быстрее.

Я нено я хорошо разбираюсь в управлении памятью ios, поэтому, пожалуйста, потерпите меня.

Размер большего массива составит несколько МБ и определяется во время выполнения в функции init, которая запускается один раз при запуске. приложения. Затем меньшие массивы создаются и копируются в глобальный массив в функции (давайте назовем ее event), которая запускается несколько раз в течение жизни приложения.

init:

//count is a global
size_t number = count * 10;
largeArray = new float [number];

Iхотел бы сделать что-то подобное в событии (в настоящее время копируется только первый буфер результатов)

event:

//the 'results' are mtl buffers of size count
largeArray = (float*) results.contents;
largeArray[count] = (float*) results2.contents
largeArray[count*2] = (float*) results3.contents
...

Я считаю, что мне нужно использовать кучу для памяти, ноЯ не понимаю, нужно ли мне использовать malloc или new при инициализации массива, и как я могу копировать данные в определенные места большого массива.

...