/
MaximU
/
example.application
Обзор
Документация
Войти
/
MaximU
/
example.application
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/exampleworkerthread.cpp
83 строки
2 KB
user
В объявлении указателей и ссылок удалены пробелы между */& и именем
26 июл 2026, 11:45
26 июл 2026, 11:45
7d3f8fb
Код
Авторство
О чём код?
#include "exampleworkerthread.h" #include "applicationspecifics.h" #include "exchangeinfo.h" #include "exchangeinfotypes.h" extern ProfilerInfoClass gProfilerInfo; //!< Информация о выполнении алгоритмических блоков. extern bool gWork; //!< Признак выполнения обработки. /*! * \brief Конструктор. */ ExampleWorkerThread::ExampleWorkerThread() : WorkerThread() { } /*! * \brief Выполняетcся до начала выполнения потока. */ void ExampleWorkerThread::initSpecific() { } /*! * \brief Выполняется после окончания выполнения потока. */ void ExampleWorkerThread::exitSpecific() { } /*! Выполняет обработку массива входной информации. \param data Массив входной информации. \param results Список кодов результатов выполнения. */ void ExampleWorkerThread::processInput(char *data, QSet<int> &results) { ExchangeInfo::Header *header = (ExchangeInfo::Header *)data; QElapsedTimer duration; switch (header->type) { case ExchangeInfoType1: // Тип 1. mBlockID = BlockID1; duration.start(); gProfilerInfo.processedCycleCount1 ++; gProfilerInfo.timeIteration1 = duration.elapsed() / 1000000; results << Result1; break; case ExchangeInfoType2: // Тип 2. if (gWork) { mBlockID = BlockID2; duration.start(); gProfilerInfo.processedCycleCount2 ++; gProfilerInfo.timeIteration2 = duration.elapsed() / 1000000; results << Result2; } break; } } /*! Обрабатывает исключение, возникшее при выполнении алгоритмического блока. \param message Строка сообщения о возникновении исключительной ситуации. */ void ExampleWorkerThread::exceptionSpecific(QString &message) { Q_UNUSED(message) }