Описание тега concurrency-runtime
Библиотека параллельного программирования от Microsoft. Поддерживается компиляторами Visual C++ 2010 и выше.
2
ответа
Каковы ограничения MS Concurrency Runtime?
Я использую простую параллельную среду выполнения task_group в Visual Studio 2010 для запуска одного рабочего потока, чтобы отделить работу от потока графического интерфейса. Однако один из моих коллег сказал мне, что я неправильно использую CR: он …
28 ноя '12 в 05:16
1
ответ
Структура синхронизации ConcRT против стандартной библиотеки
Если мое приложение предназначено для Windows и уже использует Concurrency Runtime в некоторых его частях. Есть ли преимущества / недостатки использования структур синхронизации ConcRT (concurrency:critical_section) по сравнению со стандартной реали…
16 авг '13 в 00:17
1
ответ
"Параллелизм": пространство имен с таким именем не существует
Я - программист-любитель C#, который забрел на C++ из-за необходимости в технологии C++ AMP для некоторого сложного перебора чисел. Следовательно, мои навыки программирования на C++ не очень хорошо развиты. Для моей первой попытки использования реал…
21 янв '19 в 21:55
2
ответа
Как обрабатывать исключения из StorageFile::OpenAsync, когда URI плохой
У меня есть раздел кода, который правильно загружает изображения из http URI, когда URI действительны, но я не могу понять, как перехватить исключение, которое выдает OpenAsync, когда URI недопустим (приводит к 404). Проблема в том, что при выходе и…
25 апр '13 в 14:53
1
ответ
Как указать среде выполнения C++ для повторного использования предыдущего потока для продолжения задач
Я использовал среду выполнения Visual C++ для создания задачи, а затем запланировал на ней четыре продолжения. #include <iostream> #include <thread> #include <ppltasks.h> int main() { concurrency::create_task([] { std::cout <<…
21 май '15 в 15:55
1
ответ
Количество сообщений в unbounded_buffer
Класс Concurrency::unbounded_buffer может хранить любое количество сообщений. Но как узнать количество ожидающих (не полученных) сообщений?
08 авг '11 в 09:46
1
ответ
Конкатенация задач в WinRT, почему нельзя использовать task::wait?
В моем текущем проекте у меня была недавняя проблема, и мне трудно ее понять: concurrency::create_task(BPClient->ReadAnswer()).then([this](Windows::Foundation::Collections::IVector<unsigned char>^ Vec) { WSS::InMemoryRandomAccessStream^ imr…
26 май '13 в 17:25
1
ответ
Асинхронные агенты и оконные сообщения
В настоящее время я играю с библиотекой асинхронных агентов в Microsoft Concurrency Runtime. Я еще не нашел очевидного способа сообщить, что задача завершена с помощью оконных сообщений или каких-либо других средств уведомления потока пользовательск…
12 сен '11 в 21:34
2
ответа
C++ подождите, но разрешите запуск событий
При создании клиента SignalR C++ с использованием Visual Studio 2013 я начинаю с рабочего примера кода из пакета NuGet Microsoft.AspNet.SignalR.Client.Cpp.v120.WinDesktop, источник здесь Рассматривая исходный код библиотеки, мне кажется, что процесс…
05 ноя '15 в 22:39
1
ответ
Почему у меня есть возможность * не * вызывать Concurrency::agent::done внутри run?
Это в контексте API параллелизма Microsoft C++. Есть класс под названием agent (под Concurrency пространство имен), и это в основном конечный автомат, который вы получаете и реализуете чисто виртуальный agent::run, Теперь вы обязаны позвонить agent:…
16 ноя '12 в 18:23
1
ответ
Параллелизм, задачи
Я новичок в Microsoft Concurrency Runtime (и в асинхронном программировании в целом) и пытаюсь понять, что можно и что нельзя делать с этим. Можно ли создать группу задач таким образом, чтобы задачи выполнялись в том порядке, в котором они были доба…
01 июл '12 в 15:44
1
ответ
Время выполнения параллелизма VS2010 и unbounded_buffer<shared_ptr <T >>, какие подводные камни?
Я хочу передать кучу выделенных объектов из DLL. Очевидно, память должна управляться правильно. Кто-нибудь видит проблему со следующей хитрой схемой, которую я разработал: unbounded_buffer<shared_ptr<T>> buf; Я знаю, что shared_ptr скрыв…
08 июн '12 в 15:15
1
ответ
Проанализируйте API concurency::task() и зачем нам это?
Я пытаюсь понять синтаксис параллелизма:: задачи в приведенном ниже фрагменте кода. Я не могу понять этот синтаксис кода. Как мы анализируем это: Что такое "getFileOperation" здесь. Это объект типа StorageFile класса? Что здесь означает ключевое сло…
01 апр '15 в 13:44
1
ответ
Использование классов передачи сообщений параллельного исполнения VS2010 (unbounded_buffer и т. Д.) В потоках не во время выполнения
Мне нравится удобство unbounded_buffer, но я также хочу использовать этот класс в потоках, о которых среда выполнения параллелизма ничего не знает. В моих тестах это работает нормально. Есть ли потенциальные проблемы с этим подходом?
08 июн '12 в 14:36
1
ответ
Реализация локальных переменных задачи для параллелизма
Я улучшаю приложение (Win64, C++), делая его более асинхронным. Я использую Concurrency Runtime, и он отлично работает для меня. Приложение в основном выполняет ряд "заданий", преобразующих данные. Для отслеживания того, что делает каждое задание, н…
14 окт '12 в 13:33
2
ответа
Обработка исключений, асинхронные задачи WinRT C++
Я должен реализовать асинхронный HTTP GET в C++, и мы должны иметь возможность отправить приложение в Windows 8 Store. Моя проблема заключается в следующем: Я нашел подходящий пример кода, который реализует класс HttpRequest http://code.msdn.microso…
27 фев '13 в 18:49
0
ответов
PPL. Как мне запланировать несколько задач в одном рабочем потоке?
Мне нужно знать, как я могу контролировать, какой рабочий поток Concurrency::task побежит. Представьте, если у меня есть следующий код: #include <ppltasks.h> #include <iostream> #include <mutex> int main() { std::mutex mtx; Concurr…
20 июл '18 в 08:34
1
ответ
Периодическое задание с ConcRT
Я пишу приложение на C++, которое, помимо прочих обязанностей, периодически (раз в час) делает запросы к серверу.Это запланированное задание может быть прервано и принудительно выполнено раньше (когда приложение получает новые пользовательские данны…
21 апр '13 в 13:56
1
ответ
Деструктор concurrency::task вызывает прерывание вызова в допустимом сценарии использования
Не могли бы вы сказать мне, если подход, который я использую для обработки сценария использования, является недействительным, и если да, то какой правильный способ обработки: task<int> do_work(int param) { // runs some work on a separate threa…
03 июл '14 в 16:41
1
ответ
Планирование выполнения во время выполнения Windows с исключениями
Согласно MSDN, Продолжение на основе задачи всегда запланировано к выполнению, когда предшествующая задача завершается, даже когда предшествующая задача отменяется или выдает исключение. Я не понимаю этого, потому что я опробовал следующий код, и по…
23 июл '17 в 00:49