struct A
{
static void thunk(void* p)
{
A* pThis = reinterpret_cast<A*>(p);
pThis->func();
}
void func()
{
}
uintptr_t initThread()
{
return _beginthread(thunk, 0, this);
}
};
Многопоточность
т.е. если в параметре передаю обычную функцию, то все ок, а если точно также передаю метод класса, то не компилит компилятор:((
что делать?:{
Цитата:
Originally posted by Sergun
Для создания дополнительного потока юзаю _beginthread ().. но все бы замечательно, да вот не хочет эта мега-функция воспринимать как функци-поток метод класса...
т.е. если в параметре передаю обычную функцию, то все ок, а если точно также передаю метод класса, то не компилит компилятор:((
что делать?:{
Для создания дополнительного потока юзаю _beginthread ().. но все бы замечательно, да вот не хочет эта мега-функция воспринимать как функци-поток метод класса...
т.е. если в параметре передаю обычную функцию, то все ок, а если точно также передаю метод класса, то не компилит компилятор:((
что делать?:{
Передавай статический метод класса, а экземпляр в виде указателя третим аргументом _beginthread.
Пример:
Код: