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

Измерение времени выполнения потока - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ 2 Конструктора в Классе http://www.cyberforum.ru/cpp-beginners/thread103983.html
Мой класс: class zdanie { int plosh, obm, e; char *adres, *vladelec; public: zdanie(int pl, int ob, char adr, char vlad); zdanie(int el){e=el;}; };
C++ Вычислить значение функции y, развив функцию ln(x) в ряд Тейлора Задача: Вычислить значение функции y, развив функцию ln(x) в ряд Тейлора. Аргумент х изменяется от -1 до 3 с шагом 0.5. Определить погрешность. Y= ln(x)+ln(x/2) 0<x<=2 ln(x/2-1) x>=2 Мой код программы: #include <stdio.h> //підключення бібліотек уведення-виведення #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread103876.html
C++ С++ базы данных
Я понимаю, что возможно следующие вопросы уже обсуждались на этом форуме, возможно и не раз, но по поиску ничего вразумительного (понятного мне) не нашел (как и в гугле). Поэтому прошу оставить негодование и помочь. Пишу проект (лабораторная) с БД (struct). При работе возникло несколько вопросов (прошу давать советы, которые будут работать под любым компилятором :) ): 1) В поле (столбец БД)...
C++ Ввести предложение, и вывести самое короткое слово?
Ввести предложение, и вывести самое короткое слово??? Есть отдельная функция, которая удаляет подстроку со строки???
C++ Динамическое выделение памяти new http://www.cyberforum.ru/cpp-beginners/thread103837.html
Доброго времени. У меня в программе есть два двумерных динамических массива. Код компилируется, но возникает ошибка времени выполнения: "Инструкция по адресу "..." обратилась к памяти по адресу "...". Память не может быть "read"". если закоментировать выделение памяти под второй массив то программа работает без ошибок. Если попробовать выделить под второй массив совсем чуть-чуть памяти - один...
C++ Найти квадратный корень из суммы всех положительных элементов двухмерного массива помогите очень-очень решить две задачки по массивам 1.Вычислить сумму элементов, больше, чем середнеарифметичне значение всех элементов. 2. Добыть квадратный корень из суммы всех положительных элементов двухмерного массива. Буду очень сильно благодарен!!!!!! подробнее

Показать сообщение отдельно
OffyGhost
 Аватар для OffyGhost
7 / 7 / 1
Регистрация: 04.03.2010
Сообщений: 107
13.03.2010, 13:34  [ТС]     Измерение времени выполнения потока
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include "stdafx.h"
#include <clocale>
#include <math.h>
#include <windows.h>
 
int l, m, n, geo, sum;
 
_int64 FileTimeToQuadWord(PFILETIME pft)
{
    return(Int64ShllMod32(pft->dwHighDateTime, 32) | pft->dwLowDateTime);
}
 
DWORD WINAPI proizv (PVOID Parametr)
{
    geo=1;
    for (int i=l; i<=m; i++)
    geo*=i;
    return 0;
}
 
DWORD WINAPI summa (PVOID Parametr)
{
    sum = (n+1)*(l+m)/2;
    return 0;
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
    do {
        printf( "Введите нижнюю границу диапазона(натуральное число): " );
        scanf_s("%d", & l );
        printf( "Введите верхнюю границу диапазона(натуральное число): " );
        scanf_s("%d", & m );
        if (l>m)
        {
            printf( "\nВводите нормальные числа!\n\n" );
        }
    } while (m<l);
 
    n = m-l+1;
 
    FILETIME ftKernelTimeStart, ftKernelTimeEnd; 
    FILETIME ftUserTimeStart, ftUserTimeEnd; 
    FILETIME ftDummy;
 
    _int64 qwKernelTimeElapsed, qwUserTimeElapsed, qwTotalTimeElapsed;
 
    GetThreadTimes(GetCurrentThread(), &ftDummy, &ftDummy,
                   &ftKernelTimeStart, &ftUserTimeStart);
 
 
 
    DWORD idThread;
    HANDLE h1, h2;
    h1 = CreateThread (NULL, NULL, proizv, &geo, NULL, &idThread);
    h2 = CreateThread (NULL, NULL, summa, &sum, NULL, &idThread);
    SetThreadPriority(h1, THREAD_PRIORITY_HIGHEST);
    SetThreadPriority(h2, THREAD_PRIORITY_IDLE);
 
    GetThreadTimes(GetCurrentThread(), &ftDummy, &ftDummy,
                   &ftKernelTimeEnd, &ftUserTimeEnd);
 
    qwKernelTimeElapsed = FileTimeToQuadWord(&ftKernelTimeEnd) -
                          FileTimeToQuadWord(&ftKernelTimeStart);
 
    qwUserTimeElapsed = FileTimeToQuadWord(&ftUserTimeEnd) -
                        FileTimeToQuadWord(&ftUserTimeStart);
 
    qwTotalTimeElapsed = qwKernelTimeElapsed + qwUserTimeElapsed;
 
    printf("\nЧисло членов: %i", n);
    WaitForSingleObject(h1, INFINITE);
    printf("\n\nПроизведение последовательности: %i", geo);
    WaitForSingleObject(h2, INFINITE);
    printf(" \nСумма последовательности %i", sum);
    printf("%lld", qwTotalTimeElapsed);
 
    CloseHandle(h1);
    CloseHandle(h2);
    getchar();
    getchar();
    return 0;
}
Быдлокодинг такой вот,
что не так? 0 выводит вроде или вообще ничего, вместо printf("%lld", qwTotalTimeElapsed);
 
Текущее время: 17:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru