Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Прервать выполнение функции в потоке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача по сортировкам http://www.cyberforum.ru/cpp-beginners/thread774901.html
Всем доброго времени суток) есть исходник программы, которая выводит слова из строки, по заданному символу с клавиатуры #include<iostream.h> #include<string.h> int i,j,l,m,n; char a,c; main()...
C++ Определить сумму и произведение членов последовательности Всем привет Уважаемые пользователи помогите сделать задачу (С + + или Visual C + +) если не трудно. Вот у меня произошла проблема в написать программы: Данные целые положительные числа N, К, М, а1,... http://www.cyberforum.ru/cpp-beginners/thread774899.html
C++ Удалить элемент очереди
Здравствуйте. Сделал всё ну практически по Липпману: #include <queue> #include <iostream> using std::queue; int main() { const queue<int>::size_type sz = 12; queue<int> q;
C++ Данные целые положительные числа N, К, М, а1
Всем привет Уважаемые пользователи помогите решить задачу (С + + или Visual C + +). Вот у меня произошла проблема в написать программы: Данные целые положительные числа N, К, М, а1, .... аn....
C++ Определить максимальное из значений, встречающихся в заданной матрице более одного раза http://www.cyberforum.ru/cpp-beginners/thread774891.html
Здравствуйте! Пытался решить данную задачу, но по ходу возник вопрос, как подсчитать максимальные значения которые встречаются именно более одного раза. Как найти максимальное значение написал, что...
C++ Описать структуру с именем STUDENT 1.Описать структуру с именем STUDENT, содержащую следующие поля: • NAME – фамилия и инициалы; • GROUP – номер группы; • SES - успеваемость (массив из пяти элементов). 2. Написать программу,... подробнее

Показать сообщение отдельно
rasnaut
0 / 0 / 0
Регистрация: 17.07.2008
Сообщений: 6

Прервать выполнение функции в потоке - C++

30.01.2013, 01:16. Просмотров 578. Ответов 0
Метки (Все метки)

Здравствуйте, у меня вопрос, возможно ли прервать функцию извне, при этом сама функция является "чёрным ящиком", то есть мы не знаем что там?
Например, у нас есть некий поток, в которому на выполнение передали функцию. В момент выполнения функции, поток получает сигнал (событие), которое ему приказывает срочно завершить все действия, но при этом не использовать terminate(). Как потоку в этом случае, не дожидаясь пока функция завершит своё действие, завершить её?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MyThread::run()
{
     for(;;)
     {
        ...
        doSumFank(sumObj* sObj);
        ...
     }
}
void MyThread::doSumFunk(sumObj* sObj)
{
    ....
    sObj->MyFunk();//собственно, эту функцию как-то нужно прервать
    ....
}
Заранее, спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru