Проблемы при передаче массива по ссылке на потоки

Я изучаю потоки и нашел несколько простых примеров.

То, что я надеюсь сделать, - это создать 5 потоков, каждый из которых назначает случайное число массиву из 20 int. Затем, наконец, есть еще 5 потоков, которые восстанавливают этот массив до большего целого 100 размера.

Вот некоторый предыдущий код, который я пробовал. Я надеялся, что смогу передать массив по ссылке, но не повезло.

Буду признателен за любые идеи, имейте в виду, я совершенно новичок в темах

#include <process.h>
#include <windows.h>
#include <iostream>
#include <fstream>
#include <time.h>
//#include <thread>

using namespace std;

void myThread (void *dummy );
void myThread2 (void *dummy );

int main()
{

    ofstream myfile;
    myfile.open ("coinToss.csv");

    int rNum;

    long numRuns;
    long count = 0;
    int divisor = 1;
    float holder = 0;
    int counter = 0;
    float percent = 0.0;

    int array1[1000000];
    int array2[1000000];


    srand ( time(NULL) );

    printf ("Runs (use multiple of 10)? ");
    cin >> numRuns;

    for (int i = 0; i < numRuns; i++)
    {
        _beginthread( myThread, 0, (void *) (array1) );
        _beginthread( myThread2, 0, (void *) (array2) );

    }

}

void myThread (void *param )
{
    int i = *(int *)param;

    for (int x = 0; x < 1000000; x++)
    {
        //param[x] = rand() % 2 + 1;
        i[x] = rand() % 2 + 1;
    }

}

void myThread2 (void *param )
{
    int i[1000000] = *(int *)param;

    for (int = 0; x < 1000000; x++)
    {
        i[x] = rand() % 2 + 1;
    }

}

Ответы на вопрос(3)

Ваш ответ на вопрос