Russian Qt Forum
Ноябрь 01, 2024, 03:12 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt AMP C++ не завершается процесс  (Прочитано 11083 раз)
Acrobat
Гость
« : Май 26, 2017, 12:26 »

Доброго времени суток. Изучаю библиотеку AMP с использованием Qt.
В Qt Creator создал консольное приложение:

#include <QCoreApplication>
#include <amp.h>
#include <iostream>
using namespace concurrency;



void AddArrays() {
    int aCPP[] = {1, 2, 3, 4, 5};
    int bCPP[] = {6, 7, 8, 9, 10};
    int sumCPP[5] = {0, 0, 0, 0, 0};

    array_view<int, 1> a(5, aCPP);
    array_view<int, 1> b(5, bCPP);
    array_view<int, 1> sum(5, sumCPP);
    sum.discard_data();

    parallel_for_each(
        sum.extent,
 [=](index<1> idx) restrict(amp)
        {
            sum[idx] = a[idx] + b[idx];
        }
    );

    for (int i = 0; i < 5; i++) {
        std::cout << sum << "\n";
    }
}



int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    AddArrays();

    return a.exec();
}


После успешной отработки процесс не завершается и закрыть его невозможно, даже через диспетчер!!! Помогает только перезагрузка. В чём может быть беда ?
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #1 : Май 26, 2017, 14:03 »

return 0; без создания экземпляра QCoreApplication.
Вроде, должно помочь.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #2 : Май 26, 2017, 14:05 »

А для завершения процесса мне помогает в меню debug действие stop debugging
Записан
Acrobat
Гость
« Ответ #3 : Май 26, 2017, 14:16 »

Бл...ь как за...ла эта это, за что не возьмись везде какая-то неведомая хрень. Везде клин, какие-то неведомые ошибки, от которых комп даже не может перезагрузиться. В вижуале 2015 этот код вообще не работает.
Господи помоги нам.
Записан
ViTech
Гипер активный житель
*****
Offline Offline

Сообщений: 858



Просмотр профиля
« Ответ #4 : Май 26, 2017, 14:57 »

Сложными и мощными вещами не всегда есть возможность пользоваться простыми способами. В С++ нужно точно понимать что и зачем ты делаешь. Набросать "как-нибудь код", чтобы он работал как надо - не выйдет. Крепитесь Улыбающийся.
Записан

Пока сам не сделаешь...
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 22.