работа с потоками
есть код создания потоков
[ code=c ]
...
int i = 0;
for (; i < 10; i ++) {
if (CreateThread (NULL, 0, Func, m, 0, &p->threadId) == NULL)
printf ("ERROR CREATE THREAD!n");
m->next;
}
...
[ /code ]
поток
[ code=c ]
DWORD WINAPI Func (LPVOID var) {
my_t m = (my_t) var;
while (1) {
if (m->s->next != NULL)
m->s = m->s->next;
else
m->s = m->s->root;
Sleep (2.0);
}
}
[ /code ]
Как сделать, чтобы в потоках изменялось значение каждой структуры в отдельности?
Почитал у Рихтера нужно спроецировать нужную часть адресного пространства на конкретный участок физической памяти.
Правильно я понял, что нужно выделять регионы через функцию WirtualAlloc?
Подскажите, плиз, как изменить код выше....
в цикле создания тредов попробуйте вместо m->next; сделать m=m->next;
в цикле создания тредов попробуйте вместо m->next; сделать m=m->next;