параметры и потоки
Есть функция, которая принимает параметры, необходимо передать параметры в поток. создал ссылки через структуру, но можно как-то без нее?
int XCreateThread(char* NAMEDEVICE,Coord* xdevice,char* Body,char* PPrefix,HANDLE queue,BaseConnect* delta,PARAMS* a)
{
DWORD mthread_id;
gg* ggg = new gg;
ggg->a = a;
ggg->Body = Body;
ggg->delta = delta;
ggg->NAMEDEVICE = NAMEDEVICE;
ggg->PPrefix = PPrefix;
ggg->queue = queue;
ggg->xdevice = xdevice;
HANDLE X = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)segts,ggg, 0, &mthread_id);
return 0;
}
Параметризованный делегат?
не забывайте только обрамлять доступ к очереди критическими секциями , а то получите или вылет или исключение .
такое решение удобно тем , что для обработки следующего блока информации не нужно уничтожать старый поток и создавать новый .
это элементарная работа с STL .
а хендлы потоков удобно хранить в стандартном контейнере .