Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Код потребляет очень много памяти. Подскажите как оптимизировать? https://www.cyberforum.ru/ cpp/ thread302331.html
Есть код на C++ (компилируется под GCC) - подсчёт коэффициентов осцилляторной системы методом Рунге-Кутта (метод в простейшем случае). Проблема в том, что секунд за 10, он успевает занять метров 600...
C++ C++ паттерны, архивация файлов
Начал делать реализацию паттерна Strategy, короче если кто-то может завершить код помогите. А вообще вопрос стоит так: "как запустить архивацию в С++?". Если кто может помогите. #include <iostream>...
Удаление средней буквы из нечетного слова C++
помогите пожалуйста составьте программу с кодом на С, просто я сам нешарю в строках. Условие:Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 строчных русских...
C++ Назначение кода Добрый день, скажите плиз, что означают эти строчки кода x1 = rc.right/25-rc.left; k=(xk-xn)/(rc.right*23/25+rc.left); Добавлено через 8 часов 55 минут вопрос ещё актуален https://www.cyberforum.ru/ cpp/ thread301779.html
C++ BGI библиотека вращение прямой https://www.cyberforum.ru/ cpp/ thread301287.html
Здравствуйте уважаемые форумчане! Вот беда, не могу справиться с компьютерной графикой. Прошу вашей помощи. Вот задача: Аршин. На нижней стороне прямоугольника CDEF (экрана) лежит отрезок AB...
C++ DNS
помогите пожалуйста с написанием простейшей программы работы DNS-сервера с базой данных
C++ Документация c++
Знаю что есть просто суперская документация по java, сам пользуюсь не нарадуюсь, есть нормальная ли документация по с++? php? кроме MSDN, где надо вводить имя класса, а так чтобы посмотреть иерархию...
C++ realloc и вызов конструктора здраствуйте! мне препод сказал, что можно выделить память оператором new, а потом довыделить её с помощью realloc и каким-то образом вызвать конструкторы для новой памяти(ну или это я так его... https://www.cyberforum.ru/ cpp/ thread300431.html
C++ Что это за компонент? https://www.cyberforum.ru/ cpp/ thread300352.html
Всем привет. Кто ни будь, знает в какой библиотеке есть компоненты: TLight и TTrend ? Знакомы ли вообще такие названия кому ни будь?
C++ Visual C++ и Builder C++ сильно отличаются друг от друга? Доброго времени суток. У меня такой вопрос, Visual C++ и Builder C++ сильно отличаются друг от друга? Например если прога была написана в Visual, то будет ли она корректно работать в Builder? https://www.cyberforum.ru/ cpp/ thread300349.html
spbout
0

Run-Time Check Failure #2 - Stack around the variable 'task' was corrupted.

23.05.2011, 02:42. Просмотров 1090. Ответов 0
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void Dispatch(){
    if (gRunTask.entry != NULL){
        if (setjmp(gE) != 0)
            return;
        *gRunTask.env = *gE;
        gRunTask.jmp = true;
    }
 
    if(gRunTask.entry == NULL){
        if(gReadyTask.begin() == gReadyTask.end()){
            //нет задач на выполнение
            ShutdownOS();
        }
 
        //Значит на выполнении нет задачи
        gRunTask = gReadyTask.back();
        gReadyTask.pop_back();
    } else if ( (gRunTask.waitRes)||((gRunTask.priority < gReadyTask.back().priority)&&(!gReadyTask.back().waitRes)) ){
        
        TTaskStruct task1 = gRunTask;
        gRunTask = gReadyTask.back();
        gReadyTask.pop_back();
        gReadyTask.push_back(task1);
        std::sort(gReadyTask.begin(),gReadyTask.end(),&compare);
    }
    //
    //
    *gE = *gRunTask.env;
    if (gRunTask.jmp)
        longjmp(gE,-1);
    gRunTask.entry();
}
Пишу ОС реального времени, это диспетчер, при переключении между задачами использую setjmp и longjmp. Запускаю первую задачу она захватывает ресурс1, позжу запускает вторую, вторая по приоритету выше выкидывает первую, но ей тоже нужен ресурс1, она идет в ожидание, первая заканчивает работу и освобождает ресурс1, тут должна включиться вторая, но на строчке longjmp вылетает прерывание из заголовка. Если убрать *gE = *gRunTask.env; и *gRunTask.env = *gE; использую gRunTask.env на прямую, совершенно на том же шаге выкидывает:
Необработанное исключение в "0x77a8e1b9" в "RTOS.exe": 0xC0000029: Неверный конечный адрес во время операции завершения.
при этом указывает на кусок кода их <algorithm>, использую visual studio 2008, спасибо.

Вернуться к обсуждению:
Run-Time Check Failure #2 - Stack around the variable 'task' was corrupted.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2011, 02:42
Готовые ответы и решения:

Run-Time Check Failure #2 - Stack around the variable 'MX' was corrupted.
Решаю задачу. Вот код: #include &lt;iostream&gt; using namespace std; int main () { int S;...

Run-Time Check Failure #2 - Stack around the variable 'A' was corrupted
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() {...

Run-Time Check Failure #2 - Stack around the variable 'support_points_1' was corrupted
Ошибка вылетает на статический массив после завершения работы функции. Вроде как выход за...

Run-Time Check Failure #3 - The variable 'y' is being used without being initialized
нужно написать программу по графику который состоит из трех частей, в итоге выводит ошибку Run-Time...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.