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

Определить время выполнения потоков - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ #define sqr(a) (a)*(a) - зачем так много скобок? http://www.cyberforum.ru/cpp-beginners/thread1124266.html
#define sqr(a) ((a)*(a)) такие вопросы: 1) Зачем ((a)*(a)) так много скобок? (если можно,объяснить доступным языком) 2) почему, если их убрать - то будет неправильно? 3) как работает этот #define ?
C++ Определить, принадлежит ли точка кольцу, определяемому окружностями Вот сама задача: Определить, принадлежит ли точка А(а1, а2) кольцу, определяемому окружностями: x2 + y2 = 1 и x2 + y2 = 16. С чего можно было начать? http://www.cyberforum.ru/cpp-beginners/thread1124262.html
C++ Посоветуйте хороший компилятор
Посоветуйте хороший компилятор для С,который был бы просто в применении,так как я только начинаю программировать.
C++ Проверка введенных данных; выполнение кода по условию
#include "stdafx.h" #include "conio.h" #include "math.h" int _tmain(int argc, _TCHAR* argv) { float a, b, c, x, res; printf("Input x - ");
C++ Напечатать букву, которая входит в наибольшее количество слов этой последовательности http://www.cyberforum.ru/cpp-beginners/thread1124238.html
Дана непустая последовательность из строчных латинских букв, между соседними словами - запятая, за последним словом точка. Напечатать букву, которая входит в наибольшее количество слов этой последовательности. Программа уже готова. Только надо понять как она работает. Ребята если не трудно объясните что происходит на каждой строке. Простыми словами. int main(int argc, char* argv) { int...
C++ Записать все слова символьной строки, чтобы каждое слово было с новой строки, и в отдельной переменной Здравствуйте. нужно сделать задание, Записать все слова символьной строки, чтобы каждое слово было с новой строки, и в отдельной переменной. Кто может? Заранее Спасибо!!!! Добавлено через 46 минут up up Добавлено через 46 минут up up подробнее

Показать сообщение отдельно
rafiksaiti
1 / 1 / 0
Регистрация: 15.09.2012
Сообщений: 40

Определить время выполнения потоков - C++

19.03.2014, 20:26. Просмотров 214. Ответов 0
Метки (Все метки)

Здравствуйте.
У меня программно задаются N потоков, которые производят вычисления. В конце необходимо вывести время работы каждого потока. Пользуюсь следующим кодом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
for(cur2=inf.begin();cur2!=inf.end();cur2++){
        cout<<"Поток, имеющий id="<<cur2->first<<" решил "<<cur2->second<<" задач и затратил ";
        FILETIME ftKernelTimeEnd,ftUserTimeEnd,ftDummy;
        _int64 qwKernelTimeElapsed, qwUserTimeElapsed, qwTotalTimeElapsed;
        GetThreadTimes(hThread[i], &ftDummy, &ftDummy,&ftKernelTimeEnd, &ftUserTimeEnd);
        qwKernelTimeElapsed = FileTimeToQuadWord(&ftKernelTimeEnd);
        qwUserTimeElapsed = FileTimeToQuadWord(&ftUserTimeEnd);
        qwTotalTimeElapsed = qwKernelTimeElapsed + qwUserTimeElapsed;
        cout<<qwTotalTimeElapsed<<" нс"<<endl;
        CloseHandle(hThread[i]);
        i++;
    }
Что я делаю не так? У некоторых потоков время выполнения равно 0, хотя они 100% выполняли вычисления...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru