16 / 0 / 2
Регистрация: 10.11.2012
Сообщений: 117
1

Исполнение функции-члена в отдельном потоке

30.06.2016, 13:20. Показов 1063. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, форум!

Вот такой вот пример:
Имеется класс, в котором есть 3 перегрузки одной функции.
C++
1
2
3
4
5
6
7
8
9
10
class A
{
public:
 
void func1();
 
void func1(int a);
 
void func1(int a, int b);
};
В основной программе я пытаюсь запустить func1 в отдельном потоке:

C++
1
2
3
4
5
6
void (A::*ptr_func1)(int,int);
 
ptr_func1 = &A::func1;
 
std::thread t1(ptr_func1,1,2);
t1.join();
В итоге получаю следующее сообщение об ошибке:
error C2064: результатом вычисления фрагмента не является функция, принимающая 2 аргументов

Не могли бы вы подсказать, что я делаю не так?

Заранее спасибо Вам!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.06.2016, 13:20
Ответы с готовыми решениями:

Запуск функции в отдельном потоке unix
Доброго времени суток! Скажите пожалуйста, как можно в Unix запустить функцию в отдельном потоке? ...

Вызов рекурсивной функции в отдельном потоке
Добрый день. Пытаюсь реализовать рекурсивный поиск файлов по заданной маске по каталогам в...

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

Не работает выполнение функции в отдельном потоке
Привет. Есть код: showLightBox("Please Wait...", "black", false); QFuture<bool> future =...

1
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
30.06.2016, 15:24 2
krazyd, Либо делайте функции-члены статическими, либо передавайте указатель на объект:
C++
1
2
3
4
5
6
7
void (A::*ptr_func1)(int,int);
 
ptr_func1 = &A::func1;
 
A a;
std::thread t1(ptr_func1, &a,1,2);
t1.join();
0
30.06.2016, 15:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.06.2016, 15:24
Помогаю со студенческими работами здесь

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

Выполняются ли callback функции в отдельном потоке (потоках)?
Или внутри функции DispatchMessage? Или есть несколько потоков для обработки...

Работа функции в отдельном потоке, с отрисовкой прогресса
При нажатии кнопки в форме, происходят некоторые вычисления. Причём, процесс вычисления связан с...

В отдельном потоке после функции accept() ничего не выполняется
Помогите, объясните, плиз, почему не работает! =( Сетевое приложение Windows Forms с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru